The victory allowed Happ (8-2) to tie for the lead in victories among major league rookies. He struck out a career-high 10 and gave up four hits.
With Pedro Martinez making his final tune-up start in the minor leagues Wednesday, Happ's place in the Philadelphia rotation is in question and he made a major statement in his bid to keep his current job.
Happ, who threw a five-hit shutout June 27 at Toronto, also had his first career extra base hit when he delivered an eighth-inning double.
The Phillies ended a three-game skid and Colorado had a five-game winning streak snapped. The Rockies also slipped a half game behind San Francisco at the top of the National League wild-card race.
Philadelphia's home runs were a solo shot by Pedro Feliz and a two-run blast by Jimmy Rollins, both coming in the second inning, and a three-run blast in the fifth by Jayson Werth.
All of the home runs came off Jorge De La Rosa (9-8), who had won his previous seven decisions. De La Rosa went seven innings, giving up 10 hits.
Colorado shortstop Troy Tulowitzki had a 10-game hitting streak come to an end.
Copyright 2009 by United Press International.