For the third time in his last four starts, the right-hander gave up two runs or fewer. Weaver (4-4) allowed two in six innings Tuesday as he continued his bid to nab a spot in the Cardinals' postseason rotation.
"He looks like he's peaking at the right time," said shortstop Aaron Miles, who had four hits himself. "And he swings a pretty good bat, too."
Weaver doubled in a run in a six-run sixth inning. He also didn't walk anybody.
Miles matched his first game as a Cardinal -- he had four hits on Opening Day this year. His keystone mate, second baseman Ronnie Belliard, had his first three-hit game as a Cardinal.
Belliard hit a home run in the second inning and scored four runs besides making a tumbling catch in the field.
"We're in a pennant race," he said. "I've got to do something extra."
REPLAY: The Cardinals handed Milwaukee right-hander Ben Sheets his 13th loss in 17 decisions against them, beating Sheets and the Brewers bullpen 12-2 Tuesday.
Besides four hits from Aaron Miles and three from Ronnie Belliard, Albert Pujols drove in two runs and had two hits.
--1B Albert Pujols gave the Cardinals a scare Tuesday when he shook his left hand and arm after making a tag at first base to complete a double play. He stayed in the game, however.
--RHP Jason Isringhausen will have arthroscopic surgery Thursday in Nashville, Tenn., to deal with pain in his left hip. There is no timetable for his return next season. Isringhausen will be in the final year of his contract.
--INF/OF Scott Spiezio has been one of the club's better hitters lately, but not Tuesday. He fanned four times.
--RHP Jeff Weaver was 2-for-22 as a Cardinal before driving in a run with a double in the sixth inning Tuesday. His fourth win as a Cardinal was also his fourth on the road.
--INF John Nelson is having a hard time getting his first major league hit. Nelson batted for the fourth time Tuesday, and he fanned for the fourth time.
--The magic number for the Cardinals to clinch their third consecutive National League Central crown is six.
BY THE NUMBERS: 2 -- Number of starts out of 31 in which RHP Jason Marquis (14-15) has not had a decision, through Sept. 15.