Kratz connected for a three-run home run in the second inning and Utley had a two-run shot in the third in support of Halladay.
Halladay (9-7) allowed six singles and two doubles -- both to Jay Bruce -- in a 7 1/3-inning outing. Her stuck out five and walked one.
Bruce's fourth-inning double accounted for the Reds' first run and he added his 32nd home run of the season off reliever Jonathan Papelbon in the ninth.
But Philadelphia had piled up a 6-0 lead through three innings to beat Mike Leake (7-9). Leake was touched for six runs, six hits and one walk in 2 1/3 innings.
Ryan Howard, John Mayberry and Dominic Brown opened the Phillies' second with singles and Howard scored on Brown's hit. Kratz followed with a shot to left-center for his ninth home run of the season and a 4-0 Philadelphia lead.
After Juan Pierre walked to open the third, Utley sent to a drive onto the terrace beyond center field that made that score 6-0. It was his 10th homer this year.