The Rockies won their fourth in a row, taking the lead for good with a three-run fifth inning.
Cuddyer singled in a run in the first, drove in another run with a base hit in the fifth and then delivered his homer in the seventh that put Colorado in front 6-2.
Colorado's first three runs, one of which was unearned, were charged to losing pitcher Tyson Ross (0-1). He allowed three hits and four walks in four innings.
San Diego, which has yet to play a home game this season, has lost four of its first five.
Iranian woman stops the execution of son's killer
Rosie O'Donnell unveils nearly 50-pound weight loss