Aramis Ramirez gave the Cubs the lead with his third single of the game to snap a seventh-inning tie.
Third baseman Scott Rolen's two-out fielding error opened the door for the Cubs, who are an N-L-best 20-and-7 since June Third.
Zambrano is 13-and-7. He labored through 117 pitches in six and a-third innings. His scoreless streak ends at 20 and a-third innings over three games on Skip Schumaker's two-run triple in the fifth.
Kip Wells fell to 4-and-13 with the loss.