Uggla's first blast in the fourth inning erased a 1-0 deficit and his second homer two innings later put the Braves ahead to stay at 2-1.
Atlanta put the contest away with five more runs in the eighth, highlighted by Freeman's grand slam, as the Braves cruised to a victory in the rubber match of a three-game series.
Andrelton Simmons went 4-for-5 and Jordan Schafer added three hits for Atlanta.
Mike Minor (4-2) hurled seven innings of one-run ball to record the decision, walking three and striking out seven.
Reds starter Mike Leake (2-2) fanned six over seven full frames but was touched for four runs on eight hits.
Zack Cozart and Jay Bruce went deep for Cincinnati.
Ray Liotta sues skin care company over use of likeness
Boston schools pull out free condoms over wrapping complaints