Chris Duncan's two-run single with the bases loaded in the first inning capitalized on two walks by Oswalt and provided an early lead over a longtime nemesis in a 3-2 victory Thursday night. Albert Pujols homered while finishing a 6-for-10 series and Kyle Lohse carried a shutout into the seventh for St. Louis.
"Obviously, after the first inning you can see he got his stuff and got pretty comfortable," Pujols said. "When you face a great pitcher like Maddux or Zambrano or Roy, you need to get those guys early."
The Cardinals took two of three from a team that had tied them for second place in the NL Central after taking the opener. They have won all three three-game series against Houston this season after losing the first game, and have won eight of the last 11 against the Astros overall.
Oswalt (4-5) allowed three runs in seven innings, losing to the Cardinals for the first time in 11 starts dating to July 16, 2005. He was 5-0 with a 1.62 ERA in the previous 10 starts, although he took a loss in relief just before the All-Star break on July 8, 2006, and fell to 9-6 with a 2.90 ERA for his career against St. Louis.
That list does not include two dominant outings in the 2005 NLCS, including the Game 6 clincher in St. Louis in the final game played at old Busch Stadium.
He allowed three hits in his last six innings, including Pujols' 13th homer, and no more walks like those that haunted him in the first. The Astros have lost each of his last three starts, and he's 0-2 in that stretch.
"I was trying to be a little too fine," Oswalt said. "I think once I got behind guys, they weren't going to swing and get back in the count. I've thrown games like this, this year."
Lance Berkman hit his 17th homer leading off the ninth against Ryan Franklin to cut the gap to a run before Franklin retired the next three in order for his fourth save in six chances. The game lasted 2:05, tied for third-fastest in the majors this season.
"Berkman's a great hitter, but there's no way he can hit a three-run homer," Franklin said. "So what if he hits a home run, I'm not going to pitch around him, I'm going to go after him.
"You've still got a one-run lead and three outs to get so you've got to bear down and knot up and get after it."
Berkman also doubled in four at-bats and is batting .474 this month (46-for-97) with nine homers and 22 RBIs. Berkman leads the NL with 47 RBIs and Lee is one behind, and Berkman is tied for the league lead in homers.
Lohse (5-2) opened with six scoreless innings for the second straight start. Lee homered to straightaway center on the first pitch of the seventh to cut the gap to 3-1. Lohse was yanked after Hunter Pence followed with a single, allowing five hits and a walk.
"You get that deep and your team's got the lead, you can't argue with bringing in the bullpen," Lohse said. "You don't feel bad handing off there."
Oswalt was allowed to bat with the Astros trailing 3-1 and a runner on second with two outs in the seventh, a big vote of confidence from manager Cecil Cooper, who said after the game "He's pitching well and he's my ace." That Oswalt had thrown only 79 pitches also factored into the decision, but then Cooper pulled him after a scoreless seventh.
Duncan's two-run single capped a two-out rally in the first. Pujols singled, Oswalt walked Ryan Ludwick and Troy Glaus on four pitches each, and he alternated between a windup and the stretch position during the Duncan at-bat.
Pujols' 13th homer tied Ludwick for the team lead, leading off the sixth to make it 3-0. He's a career .314 hitter (22-for-70) against Oswalt with four homers and nine RBIs. Oswalt has been bothered by a hip injury at times this season.
"I've got a lot of respect for him," Pujols said. "He's a great competitor, and even though he's not 100 percent he's battling and trying to do his best. That's pretty impressive, what he can do at probably 75 or 85 percent."
Cardinals 2B Adam Kennedy was 1-for-24 before lofting a single in the seventh. ... LHP Ron Villone made his 600th career appearance to start the eighth, getting Michael Bourn to ground out. He's 25th among active pitchers, and one of three Cardinals on the list. Braden Looper is 22nd with 614 appearances and Russ Springer is 23rd with 610. ... Berkman leads the majors with 150 total bases and 57 runs. ... Bourn stole his major-league leading 24th base. ... Lee is batting .181 (6-for-33) against the Cardinals, but with three homers and six RBIs.