The loss dropped the Phillies to third in the wild card standings, 1 1/2 games behind Houston. Florida beat Washington to move into second, one game behind the Astros.
Former Astros' closer Billy Wagner (4-2), making just his second career appearance against his former team, took the loss. Roy Oswalt (17-11) gave up one earned run on six hits, with eight strikeouts over eight innings to get the win, while Brad Lidge recorded his 34th save.
Wagner walked Lance Berkman with one out in the ninth and Bruntlett came on to pinch-run, collecting his third and fourth steals of the season. Lane then delivered a single to left to give Houston their lead.
Wagner was admittedly upset at the loss. "The last team I want to be beat by is Houston."
In the eighth, Jimmy Rollins ripped what appeared to be a sure double to right, but he missed first base and had to settle for a single. Rollins was bunted over to second. Oswalt then intentionally walked Bobby Abreu and walked Pat Burrell unintentionally. Ryan Howard stepped to the plate, but grounded out to second to end the inning. Rollins hit gave him a career high 13 game hitting streak.
Four innings into the game, fans showed their frustration after Pat Burrell struck out to end a potential rally. The only time that they seemed truly into the game was when Ryan Howard launched his 14th homerun of the season in the fifth inning and tied the game at 1-1.
Craig Biggio hit a first inning homerun to give Houston a quick 1-0 lead. Jon Lieber, who started for the Phillies was able to get into a groove and retired 13 of 14 hitters before giving up a two out single to Adam Everett in the sixth.
Lieber allowed five hits and no walks over seven innings.
"We damn sure need a win," said Phillies manager Charlie Manuel.