Chicago Cubs' Darwin Barney, right, is tagged out by Philadelphia Phillies' Chase Utley in the ninth inning.
With a seven-run lead, Roy Halladay didn't lobby to stay in the game.
He might push harder next time.
Halladay tossed seven masterful innings to become the first nine-game winner in the majors, Placido Polanco hit a grand slam and the Philadelphia Phillies held on to beat the Chicago Cubs 7-5 Friday night.
Halladay (9-3) gave up six hits and struck out nine to earn his first win against the Cubs. The Phillies and San Francisco are the only teams he hasn't beaten.
Halladay, who leads the league with four complete games, threw 106 pitches and was ready to go back out in the eighth until Polanco connected to make it 7-0.
"I definitely understand," he said about exiting. "I want to go as far as I can but that makes sense. We have a long way to go and if you can save it, it pays off later."
In his first start since criticizing his team and second-guessing closer Carlos Marmol, Carlos Zambrano got rocked.
Zambrano (5-3) allowed seven runs and seven hits in 6 1-3 innings. He had a season-high seven walks.
"Too many walks," Zambrano said. "You can't do that against teams like this. Next time I will make an adjustment."
Trailing 7-0 in the eighth, the Cubs rallied with five runs off relievers Jose Contreras and J.C. Romero.
But Michael Stutes came in and shut them down, and Antonio Bastardo got the final out for his second save. Ryan Madson was unavailable a night after blowing his first save.
"The silver lining is seeing those young guys," Halladay said of Stutes and Bastardo. "They were put on the spot and did a great job."
Domonic Brown also hit a homer for the NL East-leading Phillies. His two-run shot gave Philadelphia a 3-0 lead in the second. Polanco, batting fifth for the first this season, increased the lead in the seventh.
"When I'm in the box, I don't think if I'm hitting second or fifth," Polanco said. "I just try to do my job."
Halladay didn't need much, but the bullpen almost blew it. The reigning NL Cy Young Award winner improved to 29-3 when the Phillies give him a lead. He didn't allow a walk for the fourth time in 14 starts.
Aramis Ramirez hit a two-run single off Contreras. Geovany Soto had an RBI single and pinch-hitter Lou Montanez hit a two-run single off Romero to cut it to 7-5.
Stutes entered and struck out pinch-hitter Brad Snyder and retired Kosuke Fukudome on a fly to left to strand two runners.
"I try not to pitch to the situation," Stutes said. "I try to go in and get hitters out and it just happened to be in the middle of a rally for them."
Zambrano started a 3-2, 10-inning loss in St. Louis last Sunday. Marmol gave up a tying RBI double to Ryan Theriot in the ninth, setting up Albert Pujols' second consecutive game-ending homer.
Afterward, Zambrano said: "We're playing like a Triple-A team. This is embarrassing." He also questioned Marmol's pitch selection to Theriot, a former teammate.
Zambrano apologized a day later, saying his comments were made out of frustration. The only person he was frustrated with this time out was himself.
Zambrano angrily snatched the throw back to the mound with his bare hand, walked several feet behind the mound and stared into space while waiting for Brown to circle the bases in the second.
After Polanco went deep with the bases loaded on three walks, including an intentional one to Chase Utley, Zambrano casually caught the new ball with his glove and calmly waited on the mound for manager Mike Quade to come out and pull him.
Zambrano had allowed just three earned runs combined in his previous three starts.