Ryan Howard hit a grand slam and a solo homer and Philadelphia, which led 11-0 in the sixth inning, hung on for its fifth straight victory, 13-11 over St. Louis on Monday.
The Phillies, who swept New York over the weekend, pulled within 2.5 games of the NL East-leading Mets and moved a season-best 12 games above .500 (81-69). The Phillies remained 1.5 games behind San Diego in the wild card race. The Padres defeated Pittsburgh 3-0.
Philadelphia had taken a 12-11 lead when Aaron Rowand made a tumbling catch on the warning track in center of Ryan Ludwick's drive with two on in the eighth. Rowand homered in the ninth and Francisco Rosario struck out Russell Branyan with two on and two outs to earn his first career save.
Rowand and Jimmy Rollins homered in the fourth inning and Howard's fifth career grand slam off reliever Anthony Reyes in the sixth made it 11-0. The Cardinals responded with three runs in the sixth, six in the seventh and two in the eighth.
Albert Pujols had an RBI single in the sixth and he drove in two runs in the seventh.
Nationals 12, Mets 4
At Washington, Nook Logan had three hits and New York committed four errors as Washington sent the Mets to their fourth straight loss.
The Mets, who had six errors against Philadelphia on Sunday, saw their lead over the Phillies, who beat St. Louis 13-11, in the NL East drop to 2.5 games. The 10 errors over two games set a franchise record.
Cubs 7, Reds 6
At Chicago, Mark DeRosa hit a go-ahead single against a five-man infield for his fifth hit of the game as Chicago rallied for three runs in the ninth inning to hang onto first place in the NL Central.
The Cubs remained in first by one game over Milwaukee, which beat Houston 6-0.
Cincinnati protested the game, saying Chicago manager Lou Piniella made an illegal double switch in the sixth inning because he did not go directly to the plate umpire.
Brewers 6, Astros 0
At Houston, Yovani Gallardo dominated Houston for the second time in two weeks and Corey Hart hit a two-run double as Milwaukee won.
Gallardo (9-4) allowed seven hits and struck out five in a season-high eight innings to win his fourth consecutive start. He hasn't allowed a run in 21 innings, a streak that began when he threw seven shutout innings against the Astros in a 14-2 victory on Sept. 5.
Giants 8, Diamondbacks 5
At Phoenix, Randy Winn and Pedro Feliz homered off Tony Pena in the eighth inning for San Francisco as Arizona saw its lead in the NL West cut to one game over San Diego.
The Padres beat Pittsburgh 3-0.
Arizona led 5-3 when Pena (5-4) opened the eighth by hitting a batter and walking another. Winn, who also had a sacrifice fly, followed with his 11th homer. An out later, pinch-hitter Nate Schierholtz hit a double and Feliz hit his 19th homer. Pena allowed three hits and five runs in two-thirds of an inning.
Padres 3, Pirates 0
At San Diego, rookie Jack Cassel pitched six solid innings for his first big league win and Khalil Greene hit a two-run homer for San Diego, which moved within one game of first-place Arizona in the NL West.
The Padres, trying to reach the playoffs for the third straight season, remained 1.5 games in front of Philadelphia in the wild-card race. The Phillies beat St. Louis 13-11. San Francisco beat Arizona 8-5.
Braves 11, Marlins 6
At Atlanta, Andruw Jones hit a three-run homer, Jeff Francoeur reached 100 RBIs for the second straight year and John Smoltz pitched six strong innings as Atlanta downed Florida.



