Lee (5-7) tamed the Marlins on four hits while walking one and striking out six en route to his third victory in four starts.
The left-hander -- who broke a scoreless tie with a sixth-inning RBI single -- has fanned 32 and issued only three bases-on-balls over his last five games.
Phillippe Aumont tossed a scoreless eighth inning and Jonathan Papelbon corralled his 34th save for Phillies, who climbed to within 3 1/2 games of a National League wild card berth with the win.
Jimmy Rollins bashed a two-run homer in the seventh inning, putting the Phils ahead for good.
The Marlins' Josh Johnson (8-12) absorbed the loss, allowing three runs on four hits over seven full innings.
Carlos Lee got Miami's only RBI.
'Duck Dynasty's Phil Robertson on indefinite hiatus after anti-gay remarks
WATCH: Anchor has laugh attack during 'alligator for beer' report