You don't need a "RightPaddle" and "LeftPaddle" class. Make a "Paddle" class, and pass in the parameters to the constructor that defines where it lives, and what keys move it.
Also, you shouldn't blindly have every surface defined in "globals.h" and have every class have access to them. Define those surfaces in the classes that use them, or in the main file where they're used. Then, you can pass in what information each class needs.
The huge if else if block in main.ccp is not needed. Simply do something like this:
char score; // get player 1 score sprintf(score, "%d", ball.Player1Score); score1 = TTF_RenderText_Solid(font, score, textColor); // get player 2 score sprintf(score, "%d", ball.Player2Score); score2 = TTF_RenderText_Solid(font, score, textColor);
And, why are score1 and score2 globals? Shouldn't they should be defined in main() since that's the only place they are used?
I didn't look at the rest, just a few things I noticed.
Good luck and have fun.