Scott Feldman pitched shutout ball into the seventh inning and drove in two runs with a big two-out double, helping the Cubs beat the New York Mets 8-2 on Saturday.
The Cubs have won five of seven and can win three straight series for the first time with a victory on Sunday. Anthony Rizzo had two hits and his first home run since signing a seven-year contract on Monday.
Chicago was going for its first shutout since a victory over Colorado on Aug. 26, but Rick Ankiel broke it up with a two-run homer off Hector Rondon with one out in the ninth.
Feldman (4-3) allowed seven hits, struck out six and walked one in 6 2-3 innings. The right-hander improved to 4-0 with a 1.27 ERA in five games since he lost each of his first three starts in his first year with the Cubs.
Mets starter Jeremy Hefner lost his fifth straight decision to start the season. Hefner (0-5) was charged with four runs and five hits in four innings in his shortest start since he pitched four innings against Washington on April 20.
New York, which was trying to win three straight games for the second time this season, squandered a couple of chances to get off to a fast start.
The Mets put runners on the corners in the first when Ike Davis flied out for the second out. David Wright then stole second, but David DeJesus hauled in Lucas Duda's fly ball to deep left-center at the wall to end the inning.
New York had runners on second and third again in the second, but Mike Baxter popped out to shortstop to end the inning.
Chicago then scored four times in the fourth inning. Luis Valbuena had a sacrifice fly and Welington Castillo singled in Alfonso Soriano. After Darwin Barney flied out for the second out, Feldman came up with a two-run double to give the Cubs a 4-0 lead.
Rizzo tacked on his 10th homer in the fifth and Nate Schierholtz went deep in Chicago's three-run eighth inning.
Daniel Murphy went 2 for 4 for New York and is batting .500 (14 for 28) in his last seven games. But Davis continued to struggle, going 0 for 4 to fall to 4 for 39 over his last 11 games.
The Mets have scored 26 runs over their last nine games.