Chris Carter smacked a three-run home run in a big sixth inning to lead Houston in a 7-5 win over Colorado on Thursday.
Matt Dominguez hit a solo home run while J.D. Martinez went 4-for-5 with an RBI and a run scored for the Astros, who won three of four over Colorado in a home-and-home four-game series.
Lucas Harrell (4-6) snapped a string of four losing decisions as he gave up four runs -- three earned -- on eight hits over 5 2/3 innings.
"I was just battling the whole game and we had to grind it out," said Harrell. "I just wanted to keep things close and give the guys at the plate a chance to win it."
Yorvit Torrealba went 3-for-4 with an RBI and a run scored while Carlos Gonzalez scored twice for the Rockies, who have dropped five of six overall. Juan Nicasio (4-2) gave up five runs on seven hits over five-plus innings to take the loss.
"When you have a starter that's in trouble you have to put him away or you will lose games," said Colorado manager Walt Weiss. "We didn't do that tonight and it cost us."
Colorado pushed a run across in each of the first three innings, as Michael Cuddyer had an RBI single in the first, Dexter Fowler drove one in with a basehit in the second, and Torrealba made it a 3-0 game with his RBI single in the third.
Houston got one back in the fourth after Carlos Pena grounded into a double play, plating Jason Castro for a 3-1 contest, but the team surged ahead in the big sixth inning.
Jose Altuve led off with a single and Castro followed with a double. Martinez plated the first run with a single and Pena tied the game with an RBI hit.
Wilton Lopez then took over on the mound, and Carter greeted him by clubbing a 3-2 sinker deep over the left field wall for his 10th home run of the season. Dominguez followed with his eighth homer of the year for a 7-3 lead.
The Rockies got one back with two outs in the sixth as Gonzalez's single plated a run and left runners at the corners, but Brad Peacock got Troy Tulowitzki to hit into a fielder's choice to end the frame.
Peacock then worked a 1-2-3 seventh and stranded a man in the eighth.
Wesley Wright gave up a leadoff single to Gonzalez to start the ninth and Houston went to Hector Ambriz, who then gave up a single to Tulowitzki before striking out Cuddyer. Todd Helton's sac fly made it a two-run game, but Ambriz got Nolan Arenado to look at strike three for his first career save.
Colorado went 5-for-11 with runners in scoring position, but left 11 men on base ... Harrell moved to 2-2 in four games against the Rockies ... Nicasio is 0-1 in three games against the Astros ... Houston starts a four-game road series against the Angels on Friday ... Colorado hosts the Dodgers for three games starting Friday.