Atlanta won its fifth consecutive game and remained four back of Washington in the National League East pennant race with six to play. The Braves have already clinched at least the league's top wild card spot.
Miami took an early 2-0 advantage, but the Braves erased that deficit with a four-run fourth.
A double by Uggla brought home the first run of the inning and he then scored on a double by Andrelton Simmons.
The final two runs of the inning came in when Miami left fielder Bryan Petersen misplayed a fly ball off the bat of Martin Prado for an error.
Uggla added a two-run single in the seventh.
Tommy Hanson (13-9) ended a personal four-game losing streak by giving up one earned run on six hits in 5 1/3 innings. The bull pen allowed a lone base runner over the final 3 2/3.
The loss was charged to Jacob Turner (2-5). He surrendered four runs, two earned, on six hits in six frames.
Salvation Army bell ringer assaulted for saying 'Happy Holidays'
Abigail Breslin wears sheer paneled gown for 'August: Osage County' premiere