The Marlins, who snapped a streak of eight consecutive losses to the Braves with Wednesday night, won two of three in the series. Miami has won eight of its past 10 overall.
Marcell Ozuna had three hits, including a homer, and drove in two runs for Miami.
A.J. Ramos (3-2) allowed one hit with four strikeouts in two scoreless innings. Steve Cishek pitched the ninth for his 17th save.
Cishek walked Freddie Freeman to open the ninth. With one out, Giancarlo Stanton made a lunging catch of Dan Uggla’s drive to the right-center gap to preserve the lead. Cishek then struck out B.J. Upton to end the game.
Kimbrel (2-2) issued walks to Ed Lucas and Logan Morrison, and struck out Stanton and Ozuna. Solano, pinch hitting for Derek Dietrich, singled to right field. Lucas scored from second, beating Jason Heyward’s throw.
Henderson Alvarez came off the 60-day DL for his Marlins debut and gave up hits to four of the first five batters to open the game. Freeman’s single drove in Andrelton Simmons and Heyward. Freeman scored on Brian McCann’s double for a 3-0 lead.
Alvarez made a quick recovery to retire the next 11 batters, providing an opportunity to rally against Julio Teheran.
Ozuna hit his fifth homer in the second inning. Jeff Mathis singled to lead off the second and scored on a groundout by Lucas. Ozuna added a fourth-inning single to drive in Morrison, who doubled, for a 3-all tie.
In his shortest outing since lasting five innings on April 18 at Pittsburgh, Teheran gave up six hits and three runs in five innings. He struck out seven.
Alvarez also allowed three runs in five innings. He gave up five hits with no walks.
Alvarez was lifted for a pinch hitter in the sixth when the Marlins had runners on first and third with one out. Greg Dobbs popped out and David Carpenter ended the inning on Justin Ruggiano’s groundout.