Zambrano (4-3) won for the third time in four starts, scattering four hits while walking two and striking out seven.
The good-hitting pitcher -- who has been used as a pinch-hitter at times in his career -- also smashed a solo homer off Philadelphia starter Joe Blanton (4-6) in the third inning to break a scoreless tie.
Heath Bell racked up his 12th save as the Marlins won the rubber match of a three-game series at Citizens Bank Park.
Blanton (4-6) was touched for five runs on nine hits in a six-inning stint.
Juan Pierre went 3-for-4 with an RBI for Philadelphia.