Zimmerman's one-out drive onto the grass-covered batters eye in center field came on a fastball from Brad Lidge (1-1). Michael Morse led off the ninth with a single, and Adam Kennedy walked before Zimmerman's drive. It was Zimmerman's 18th homer of the season.
Drew Storen (3-2) earned the win after facing two batters in the ninth.
Carlos Ruiz had broken a 4-all tie in the top of the ninth with an RBI single off Storen. Ruiz also homered for the Phillies.
Jayson Werth led off the ninth with a walk, advanced on a sacrifice and a groundout before scoring on Ruiz's hit to right field off Storen.
Raul Ibanez homered in the seventh to tie it at 4, extending his hitting streak to 10 games.
Ruiz cut Washington's lead to 3-2 in the sixth inning with his third home run of the season, a solo shot.
Washington extended the lead in the bottom of the inning on Ian Desmond's sacrifice fly. Domonic Brown made a diving catch on the play with runners on second and third that likely saved a run. Ryan Howard wasn't in Philadelphia's starting lineup for the first time since the final game of the 2009 regular season. The first baseman, who is in a 0-for-14 slump, was replaced by Cody Ransom. Philadelphia manager Charlie Manuel said Howard would return to the lineup Sunday.
The Nationals opened the game with five of the first seven batters hitting singles off Phillies starter Joe Blanton, including three consecutive two-out, run-scoring hits. The first RBI came on Josh Willingham's short pop-up to left that Ibanez narrowly missed making a diving catch that would have kept the game scoreless. Roger Bernadina and Ivan Rodriguez followed, knocking in a run each to give Washington a 3-0 lead.
Before the game, rumors swirled about first baseman Adam Dunn as several teams were talking to the Nationals about acquiring the slugger. The trade deadline passed without a deal, and Dunn received a large ovation when his name was announced before his first at-bat.
NOTES: Jimmy Rollins extended his streak of successful stolen base attempts to 24. Rollins was last caught stealing on July 22, 2009. ... Blanton was hit by a pitch by Joel Peralta in the sixth inning, but home plate umpire Kerwin Danley ruled Blanton intentionally moved his elbow into the path of the pitch. ... Nationals P Steven Strasburg, on the 15-day DL on Thursday with right shoulder inflammation, will throw in the outfield before Sunday's game, and then again Monday before a bullpen session Wednesday, manager Jim Riggleman said. ... Washington announced the signing of Cuban RHP Yunesky Maya. ... The Nationals will call up LHP John Lannan from Harrisburg to start Sunday.