CHICAGO -- Carlos Lee has a simple reason for putting up big numbers at Wrigley Field.
"I just think that I see the ball real good here," Lee said. "If you take a ballpark that you see the ball real good, for me it's here. I hit a lot here -- I got places I don't see the ball good, and it's the other way around. It's funny how it works."
Lee has hit 20 of his 31 homers against the Cubs at the "Friendly Confines." He also had a two-run single to give him 85 RBI against the NL Central division rival.
Lee came into the series after going 1 for 12 in a three-game series at Arizona.
"Guys have places that they swing the bat well they see the ball good in and Carlos swung the bat pretty good just in Arizona but he didn't get a whole lot of luck. Most guys usually have a ballpark where they're pretty comfortable," said Astros manager Cecil Cooper. "Maybe it's because he was a White Sox or something."
Roy Oswalt pitched seven strong innings for Houston, who won for just the second time in eight games.
Oswalt (8-5) bounced back after giving up a season high-tying 10 hits in six innings of a 3-2 loss to St. Louis on Wednesday. Oswalt is 5-1 since June 29 and the Astros have nine wins in Oswalt's last 11 starts. He allowed two runs on six hits, striking out three and walking one.
"Didn't really have my good stuff, though," Oswalt said. "I was able to locate some pitches but as far as feeling 100 percent I didn't really feel 100 percent."
Astros reliever LaTroy Hawkins allowed a solo shot to Derrek Lee in the eighth inning and Jose Valverde pitched a scoreless ninth for his 20th save in 24 opportunities. Michael Bourn made a diving catch in center on Koyie Hill's ball to end the game.
The Cubs fell six games behind Colorado and San Francisco in the NL wild-card race.
Chris Coste led off the fourth inning with a walk and advanced to second on a Oswalt's sacrifice bunt. Bourn followed with an RBI double off the ivy in center against Rich Harden. Harden walked Jeff Keppinger and Lance Berkman to load the bases. Then Lee lined a single to left, scoring Bourn and Keppinger.
In the fifth inning, Keppinger led off with a single and, one out later, Lee homered to left-center to put the Astros up 5-0. It was Lee's 22nd of the season.
Harden (8-8) allowed five runs on five hits in five innings. He struck out nine but walked six.
"It was one of those nights where I felt really good, maybe too good. I just had trouble getting a feel and getting into a rhythm and obviously walks killed me, I had a lot of those," Harden said. "It was either strikeout, a hit or a walk, not what the team needed tonight."
Harden was reportedly claimed on the waivers by the Twins, but Cubs general manager Jim Hendry said there was no serious trade discussions between the Cubs and the Twins.
Harden said the reports were on his mind throughout the week.
"It was. You just can't ignore it," Harden said. "The whole thing was ridiculous. It had nothing to do with my performance today. Can't make excuses."
With one out in the fifth, Jeff Baker singled and scored from first on Hill's double. With two outs, Ryan Theriot hit an RBI single.
Milton Bradley was 0 for 4 for the Cubs and was booed after every out he made.