Tovar's single in the seventh inning easily scored Juan Lagares to tie it up 2-2 and Anthony Recker also came home on the play when Phillies left fielder Domonic Brown couldn't handle the hit cleanly.
Lagares later added an RBI double for a much-needed insurance run for the Mets, who took three straight from the Phillies.
Cliff Lee (14-7) was tagged with the loss despite striking out eight in seven innings. He allowed three runs (two earned) on eight hits.
Kevin Frandsen, Brown and Darin Ruf each knocked in a run for Philadelphia.