The Nationals were held scoreless until producing a pair of runs in the top of the ninth. Chris Snyder opened the inning with a homer off Lay Batista, who was positioned to escape further damage until Michael Taylor sent a two-out, game-tying single to left field.
Andrelton Simmons' infield single loaded the bases in Atlanta's two-run seventh, setting the stage for Cunningham to loft his game-winning single to shallow right-center.
After allowing each of Atlanta's first four batters to reach safely in the sixth, Nationals reliever Ross Ohlendorf exited the game with what appeared to be an injury to his right side. The Braves added their second run when Dan Uggla scored on Matt Lipka's double-play groundout.
Braves right-hander Julio Teheran struggled to command his fastball as he allowed four hits, issued a walk, uncorked a wild pitch and hit a batter during his three scoreless innings. He escaped after allowing leadoff singles in his final two innings -- with two on and one out in the third, he got Tyler Moore to ground into a double play.
Nationals starter Jordan Zimmermann notched four strikeouts and limited the Braves to two hits over three scoreless innings. Singles by Chris Johnson and Lipka accounted for the only hits surrendered by Zimmermann, who, like Teheran, has not allowed a run in the five innings over his first two Grapefruit League starts.
Up next: The Braves will make the three-plus-hour trek to Fort Myers to play the Red Sox on Friday at 1:05 p.m. ET. Alex Wood, who is projected to serve as the fifth starter, will make his second start of the Grapefruit League season. David Carpenter, Anthony Varvaro and J.R. Graham are among the pitchers scheduled to follow. Jason Heyward, B.J. Upton and Justin Upton are expected to be in the lineup.
Mark Bowman is a reporter for MLB.com. This story was not subject to the approval of Major League Baseball or its clubs.