MILWAUKEE (AP) -- Earlier this month, the Milwaukee Brewers roughed up St. Louis starter Edwin Jackson for 10 runs in seven innings.
What a difference 27 days makes.
Jackson pitched seven solid innings and singled home the go-ahead run to help the Cardinals beat the Brewers 2-1 on Tuesday night.
"That's a great team," Jackson said of Milwaukee. "They have a lot of guys who can put the ball out of the ballpark. The game plan today was just come in and be aggressive. If I got hurt, you know, get hurt being aggressive around the plate."
The assertiveness paid off. Jackson was sharp for the sixth time in seven starts since being obtained in a July 27 trade, striking out three without walking a batter.
" Edwin Jackson was outstanding," Milwaukee manager Ron Roenicke said. "That was as good as I've seen him throw."
Despite the win, the Cardinals still are 9 1/2 games behind the Brewers in the NL Central and have 27 games remaining.
"You don't see anybody celebrating," St. Louis manager Tony La Russa said.
Jackson (4-2) scattered six hits and kept Milwaukee scoreless until Corey Hart and Nyjer Morgan hit consecutive doubles to open the sixth, pulling the Brewers within 2-1. Morgan was stranded, though, as the right-hander retired Ryan Braun , Prince Fielder and Casey McGehee in order.
"It was really impressive," La Russa said.
Jackson's outing was in stark contrast to the last time he faced Milwaukee, giving up 10 runs in seven innings in the Brewers 10-5 win over the Cardinals on Aug. 3.
Marc Rzepczynski walked Fielder to open the ninth, and Fernando Salas replaced him and walked McGehee. Salas, though, recorded the final three outs for his 23rd save in 28 chances.
"They scared the hell out of us every inning, just about," La Russa said.
Milwaukee starter Shaun Marcum (11-5) lost his second consecutive start despite not allowing an earned run. The right-hander went seven innings, allowing only two unearned runs on four hits and three walks while striking out four.
"They pitched well against us and we didn't do very much," La Russa said. "But, we pitched well, too, and defended well."
Defense was the difference for the Cardinals. Albert Pujols made three nice plays, charging a bunt and catching it on the fly in the first, making a running catch to snag a foul pop in the second and firing to third to get a force out for the first out in the ninth.
"To win a game like this, 2-1, you obviously have to play some good defense," Pujols said. "That's what we did today."
The Cardinals scored a pair of unearned runs in the fifth. Skip Schumaker 's hard grounder went through Fielder's legs at first base for an error to open the inning. Rafael Furcal then hit a grounder to second, but Jerry Hairston Jr. bobbled it for another error.
"That happens," Marcum said. "That's baseball. It has happened to every pitcher in this game. There is nothing you can do about it. I just kept going out there pitching and doing my job."
Yadier Molina singled to load the bases and Jackson singled to right, scoring Schumaker to give St. Louis a 1-0 lead. John Jay followed with a sacrifice fly to left, scoring Furcal for a 2-0 Cardinals lead.
This three-game series appeared to be key in the pennant stretch when St. Louis beat Milwaukee on Aug. 11 to pull within four games of first place, but the Brewers went 14-3 and the Cardinals went 7-9 in between the two series.
Morgan had three hits - two singles and a double - and a stolen base for Milwaukee.
The Cardinals loaded the bases with two outs in the ninth, but Marco Estrada got Ryan Theriot to ground out to end the inning.
Notes: Cards 1B Pujols made a one-handed catch of a foul ball in the second, showed the ball to a fan and pulled it back as the man reached for the ball. The move drew considerable boos from the sellout Miller Park crowd. Cardinals RF Lance Berkman batted second in the lineup for the first time this year. He went 0-for-4. . Brewers RF Corey Hart extended his hitting streak to 12 games with a first-inning single. . Brewers LHP Manny Parra , who has missed the entire season with an injured left elbow, underwent surgery Tuesday to have bone spurs removed from the elbow. . Milwaukee CF Carlos Gomez , on the DL with a fractured left clavicle, is expected to rejoin the Brewers Thursday, when teams can expand their rosters. . Brewers LHP Randy Wolf will face the Cards RHP Jake Westbrook Wednesday night in the second game of the series. Wolf is 5-0 with a no-decision in his last six starts. Westbrook has lost both starts against the Brewers this year, posting a 4.85 ERA in those games.