In Cincinnati, Tony Perez' pinch-hit grand slam off reliever Dave Rucker dealt Philadelphia its seventh consecutive loss.
Perez, who turns 43 today, was batting for winning pitcher John Stuper (4-2) with none out in the sixth after walks to Dave Concepcion and Ron Oester and a bunt single by Dave Van Gorder loaded the bases against John Denny (1-4). The 43-year-old first baseman lined a 3-2 pitch by Rucker just inside the left-field foul pole for his sixth career grand slam and first since he hit one for the Boston Red Sox on June 6, 1980.
Stuper (4-2) allowed six hits in six innings. John Franco and Ted Power closed out the game.
The Reds scored two runs in the first on singles by Eddie Milner and Pete Rose and Dave Parker's triple.
Philadelphia scored in the third on Darren Daulton's double, Luis Aguayo's single and Juan Samuel's force play. In the fourth, Mike Schmidt hit his third homer of the season, but first since April 29. Von Hayes doubled and scored on Tim Corcoran's single off Rose's glove at first, giving the Phillies a 3-2 lead.
The Reds tied in the fourth after a 25-minute rain delay on singles by Concepcion, Oester and Van Gorder.
Rose had a triple and a single in four at-bats, leaving him 71 hits shy of breaking Ty Cobb's all-time mark of 4,191.