Utley's RBI single in the third inning put the Phillies ahead to stay and his three-run blast in the fifth broke the game open as Philadelphia clinched its three-game series.
Carlos Ruiz supplied two RBI for the winners.
Halladay (4-4) limited the Marlins to one run on four hits over six innings, walking three and striking out two.
Jonathan Papelbon secured the triumph with his 28th save despite coughing up three hits and a run in the ninth.
Marlins starter Brian Flynn (0-2) was tagged for six runs on 11 hits in a six-inning effort.
Ed Lucas had two hits with an RBI for Miami.