The sparks came early against the Marlins, as the Braves gave Hudson a four-run cushion to start with on a night he didn't have his best stuff and yielded a season-high 10 hits in five innings.
"Putting up a crooked number early is always awesome," Hudson said. "Four runs in the first is a pitcher's dream."
After Jason Heyward reached on a fielder's choice, Atlanta strung together three straight two-out hits against Marlins lefty Wade LeBlanc. Freddie Freeman and Martin Prado each singled, with Prado's knock bringing Heyward around to score.
Dan Uggla followed with his 19th home run of the season, taking a two-strike offering from LeBlanc and depositing it 362 feet into the left-field stands on a towering blast. Both run-producing hits in the inning came with two strikes.
"Those have been few and far in between this year, and it got us off to a good start, gave Huddy a little cushion," Uggla said.
Atlanta stretched the lead to six in the fourth as Jeff Baker picked up his first RBI of the year and Hudson helped his own cause by driving in a run against LeBlanc, who took the loss after allowing six runs in four innings.
Uggla drew a one-out walk, and David Ross and Baker followed with back-to-back singles. Hudson came through with an RBI on a grounder back to LeBlanc, who unsuccessfully tried to turn the double play at second before Jose Reyes' throw to first beat Hudson and allowed a run to cross the plate.
The two additional runs were vital, as the Marlins stormed back in the bottom of the frame with four runs against Hudson.
"That's kind of been the story for most of the year for me," Hudson said of the big inning.
Rob Brantly put the Marlins on the board with an RBI base hit, and Bryan Petersen and Gorkys Hernandez then cut the Braves' lead to two runs with back-to-back, two-out triples. Petersen smacked a ball to the gap in right-center field to score two runs, and then Hernandez followed with a ball to deep center.
Hernandez had a single, double and triple in his first three at-bats, but finished the night a home run shy of the first cycle in Marlins history.
"I gave a big chunk to them there in that fourth inning, but you got to tip your hat to the guys, they took the momentum from the Nationals series and came down here to keep it going," Hudson said.
Heyward saved a run in the fifth with a shoestring grab in right field to strand a runner at third.
The Marlins cut the lead to one in the seventh against reliever Cory Gearrin when Reyes doubled and came around to score on a Carlos Lee single. Gearrin preserved the lead by getting Justin Ruggiano to bounce into an inning-ending double play.
"We battled," Marlins manager Ozzie Guillen said. "We make the game pretty fun, and we're not going to give up. We battled back against good pitching."
The Braves added an insurance run in the eighth on Prado's second RBI of the night -- as he finished with a career-high-tying four hits -- before Craig Kimbrel came in and locked down the ninth with his 37th save.
"That last RBI was big," Gonzalez said. "It really was big. Four hits. ... I don't know if it's a coincidence, but every time we give him a day off, he responds. Today he came up with four hits and it was a big night."
The win, the Braves' 11th in their last 15 games, helped Atlanta climb to 22 games above .500 for the first time since exactly a year ago -- Sept. 17, 2011.
"There's still a lot of games left, still a lot of games on the schedule," Gonzalez said. "Just keep ticking away and keep playing good. At the very least, you have a chance to go into the postseason hitting on all cylinders."