John Mayberry Jr. hit an RBI single in the ninth inning of the first game to lift the Phillies to a 3-2 win.
The Phillies trailed 4-1 in the second game before scoring two runs in the fifth, sixth and seventh innings for their fourth straight win. They have forced their way into the NL wild-card race and play their next seven games against cellar dwellers Miami and Houston.
B.J. Rosenberg (1-2) struck out two in a scoreless sixth for the win. Josh Roenicke (4-2) took the loss.
Jonathan Papelbon tossed a scoreless ninth for his 32nd save.
The Rockies followed Wilin Rosario's four passed balls in Game 1 with five errors in the nightcap.
Chris Nelson hit a three-run homer for the Rockies, who have lost five straight games.
Ty Wigginton hit the tying homer for the Phillies in the sixth and helped move them within six games of the wild-card lead. The Phillies (69-71) would like to hit .500 first.
Howard, who left two runners stranded when he fouled out to end the third, delivered in the fifth. He lined a shot to right that scored two to make it 4-3, but he was thrown out at second for the third out.
If Howard didn't get thrown out, Wigginton doesn't lead off the sixth against Roenicke with his 11th homer of the season to make it 4-4.
Those are the kinds of breaks the Phillies are getting during their sensational second-half turnaround.
Kevin Frandsen put the Phillies ahead with a pinch-hit single in the sixth.
Howard and Chase Utley are healthy after missing the first half with injuries. All-Star catcher Carlos Ruiz is back, too, after missing the last month with a foot injury.
Ruiz returned to pinch hit in the sixth as the familiar sound of "Choooooch" filled the Philadelphia night. He singled, stayed in the game, and had an RBI single in the seventh. Nate Schierholtz added a run-scoring single to make it 7-4.
Tyler Cloyd, Philadelphia's minor league pitcher of the year, struck out three and walked one in four innings.
Neither starter lasted past the fourth.
Colorado's Drew Pomeranz was pulled after throwing 77 pitches through four innings. He allowed a run, walked one and struck out three.
Wigginton led off the second with a double and scored on Michael Martinez's double.
The Rockies scored four runs in the third on Ramon Hernandez's RBI single and Nelson's three-run shot to the left field seats.
Nelson knew it was gone the moment he connected off Cloyd and followed the arc all the way into the stands.
The Rockies simply couldn't handle the baseball. Shortstop Jonathan Herrera and third baseman Chris Nelson each made two errors and first baseman Jordan Pacheco committed the fifth error when he mishandled a grounder in the seventh.
In the opener, Mayberry hit a bases-loaded single against Matt Belisle (3-6) for the win. Rockies left fielder Carlos Gonzalez sprinted toward Mayberry's low liner and appeared to make a diving catch, but the ball popped out when his glove hit the ground. There was brief confusion before the umpire ruled it was a hit.
Papelbon (5-6) picked up the win with a scoreless ninth.
The Phillies remain a long shot to win the NL wild card - but the race isn't over yet.
"You can kind of sense the crowd's excitement, coming down the stretch of games with a chance to win," Mayberry said. "I don't think anybody in this clubhouse has written ourselves off."
Rosario had two of his four passed balls in the ninth. He also had a passed ball in the eighth and the third.
The major league record for passed balls is 12 by Alex Gardner of the 1884 Washington Nationals of the American Association, according to STATS LLC. The modern-day mark is six passed balls and is shared by Rube Vickers of the Reds on Oct. 4, 1902, Geno Petralli of the Rangers on Aug. 30, 1987 and Jerry Goff of the Astros on May 12, 1996.
"We know the progress he is making, but the ball made its way to the backstop too much," Rockies manager Jim Tracy said. "That really changed things around."
Notes: The Phillies will select the contract of slugging 1B/OF prospect Darin Ruf from Double-A Reading on Monday. RHP Mike Stutes will move to 60-day disabled list to make room on 40-man roster. ... The Phillies and Rockies played a doubleheader against each other for the first time since 1999. ... Colorado rookie 1B Matt McBride, who grew up 45 minutes north of Philadelphia in Bethlehem, Pa., got the start in the opener.