Washington, which built a four-game lead over Atlanta in the National League East during the first half of the season, held an opponent to no more than one run for the 15th time in 2012.
Zimmerman (6-6) struck out six and walked just one batter while winning for the third time in four starts.
Josh Johnson (5-6) surrendered all the Washington runs on 11 hits over 5 1/3 innings. He has started against the Nationals 16 times in his career and this was the first time he has lost to them.
Trader Joe's: Car crashes into Long Island store, injuring 11
Exploding whale video goes viral on Internet