The biggest hit of the night was a two-run double to the left-field corner by Lance Berkman (2-for-5, three RBIs) that scored the eventual winning run.
Trailing, 9-8, in the eighth inning, Ty Wigginton hit a leadoff homer to knot the score at 9. Pinch-hitter Darin Erstad followed with a single up the middle, and Brad Ausmus' sacrifice bunt moved him to second. After Michael Bourn struck out on three pitches, Hunter Pence set the stage for Berkman's game-winning hit by working a walk off Boston's Manny Delcarmen.
"I thought Hunter's at-bat was as big as any to draw the walk," Astros manager Cooper said. "He's normally swinging. He was very patient, looked for something good, didn't get it and took the walk."
With the count 1-1 against Delcarmen, Berkman, who struck out in his first three at-bats against Red Sox starter Jon Lester, said he knew the next pitch would be a changeup. It was, on the outside corner, and he caught it perfectly.
"They kept scoring runs, and we kept scoring," Berkman said. "Once you're tied at home, it's anybody's game. When you score runs in bunches ... with our lineup, you get guys that continue to get on base, and you keep giving yourself opportunity after opportunity."
Cooper said the win and the atmosphere felt like a playoff game, with the 43,073 in attendance on their feet as Jose Valverde struck out the side around a Mike Lowell solo homer to earn his 20th save.
Cooper had changed the lineup Saturday morning, moving Pence to second, Berkman to third, Carlos Lee to cleanup and dropping Miguel Tejada to fifth.
"We were producing runs and hits, so I guess that's what we were looking for," Cooper said of the switch. "You'll see it tomorrow, for sure. We're just trying to get everyone jump-started, and hopefully this will do it. It was a pretty exciting night for us. They battled tooth and nail, and these guys didn't quit."
The Astros stumbled hard early, as the Red Sox jumped out to a 4-0 lead in the third inning. Brandon Backe struggled to get a third out, giving up hits to Dustin Pedroia, Manny Ramirez and Lowell to left field.
"I just ran into some trouble there in the third inning," Backe said. "I left a couple balls up, and they made me pay for it. Other than that, I was pretty much under control. I felt like my location was pretty good, and I was mixing pitches up pretty good."
The Astros had their teammates' backs right away, scoring five runs in the bottom of the third.
Backe was hit by a pitch and an infield single by Bourn put runners on first and second. Lee, batting cleanup for the first time since Game 18 of the season, drove in Backe and Bourn with a single, and Tejada followed with a single to first base. Mark Loretta then smacked the first pitch he saw from Lester to the Crawford Boxes for a three-run homer.
The Astros scored another run two frames later, appearing to catch fire against Lester, as Lee hit a solo shot to left field.
"As a starting pitcher, you want to do well, obviously, you want to have a quality start and not allow the other team to score, but in some games, you just have to pitch to the scoreboard," Backe said. "Luckily, my offense was really good today, and they got me out of trouble right away. That really helps out, makes me exhale a little bit more, so I can go right back out there."
The hometown spark fizzled a bit in the sixth, as Backe gave up two more runs to tie the game. He walked Julio Lugo and struck out pinch-hitter Sean Casey before giving up a triple to Jacoby Ellsbury. Geoff Geary replaced Backe, giving up three more runs to put the Astros at a solid three-run disadvantage.
But Houston was determined to win, scoring two more in the seventh to get close, as Berkman singled in Bourn, while Pence scored on a passed ball.