When faced with faster, quicker opponents, many players try to match them in speed, and end up losing because of too many unforced errors. Instead, ask yourself if it is realistic to play at the opponent's pace. You might decide you can do so for perhaps the first shot in a rally, but not afterwards. So perhaps start the rally close to the table and see if you can win the point quickly, before it gets into a fast rally.
Once into the rally, you might take perhaps a half step backwards to give yourself more time. Instead of trying to bang it out at high speeds, your goal now is to out-rally the opponent, using his own pace against him. If your opponent hits the ball hard, you don't need to create your own speed - just meet the incoming ball, and let it rebound back. Move the ball around so the quicker opponent has to both move and play those quick shots. Try to keep the ball deep, which jams the opponent, takes away the extreme angles he can go for, and gives you more time to react. Since you don't need to create much speed on your own, you can shorten your stroke (so you aren't as rushed), and just keep the ball in play … and out-rally your fast but frustrated opponent.
There's one other thing that helps in beating fast, quick opponents - to get out of those bang-bang rallies, perhaps develop a backhand chop. Often that quick opponent will himself be caught off guard, and will likely push - and now you can look for a ball to attack.