Behind Eovaldi's blazing 95-plus mph fastball and early run support, the Marlins decisively ended their six-game skid and Atlanta's six-game win streak.
"We haven't had that too many times, when we went out there and were able to put up more than two or three runs," manager Mike Redmond said. "Our guys came out aggressive. We strung a bunch of hits together and got some big hits. Give Nathan a lot of credit. He went out there and pounded the strike zone and gave us a chance."
The Marlins rapped out 13 hits, bouncing Atlanta starter Alex Wood -- charged with all seven runs -- from the game in the third inning.
Mathis did the big damage at the plate with his solo homer and a two-run double. Placido Polanco added three hits, while Adeiny Hechavarria and Christian Yelich each had two hits.
"It was just one of those days where I was out of sync and wasn't really following my game plan," Wood said. "They put good swings on the ball. You have to give them credit. They beat me like a drum today."
Miami is 5-10 against the Braves this season, and finished up 4-5 at Turner Field.
It was a refreshing offensive output after the Marlins scored just 86 runs in August, the fewest the franchise has ever had in the month in a non strike-shortened season. The 1994 squad collected 51 runs in 11 games before a work stoppage.
"We've played so many one-run games, and we've been on the short end of a bunch of them," Redmond said. "They're battling, trying to win ballgames, and [it's nice] to win one against a great team. Hopefully, we can get this thing going a little bit and finish up this season on a positive."
Eovaldi, who struck out six, picked up his first victory since July 12 against the Nationals, and he snapped a string of losing five straight decisions. The right-hander also is the first Miami starting pitcher besides Jose Fernandez to collect a win since Tom Koehler beat the Mets on Aug. 1.
Making his 42nd big league start, Eovaldi matched a career high for innings pitched. On Sept. 18, 2012, at Marlins Park, he threw eight shutout against the Braves.
Eovaldi and Steve Cishek, who worked the ninth, combined for the Marlins' ninth shutout.
Redmond gave consideration to letting Eovaldi go the distance. But at 102 pitches, he decided that the right-hander did enough. Plus, Cishek hadn't been in a game since Thursday in a non-save situation at Washington.
"I know he wanted it," Redmond said. "But we really needed to get Cishek in there, he hasn't pitched much in [a few] games. I knew if I sent him out there, then Fernandez was going to be knocking on my door. But he did his job. Great effort."
Redmond joked about Fernandez, the rookie phenom who has pleaded his case to have a complete game. But the Marlins are monitoring his innings. Eovaldi felt strong enough to close the game out.
"He told me he wanted to give Cishek some work," Eovaldi said of his conversation with Redmond. "I was like, 'Come on, Red.' He said, 'I know you hate me, but it's all right.' I can't really control that, once his mind is made up. It's made up. I felt great. I was really wanting to go back out there."
While he's thrown well most of the season, Eovaldi has been plagued by a lack of run support.
Heading into Sunday, the Marlins averaged 2.82 runs of support per nine innings for Eovaldi, the second lowest in the Majors for any pitcher with at least 13 starts.
For the first time since beating the Dodgers, 6-2, on Aug. 19, the Marlins scored more than four runs. The span lasted 12 games.
The seven runs were a team high since losing, 14-10, to the Giants at Marlins Park on Aug. 16.
The Marlins manufactured a run in the first inning on Polanco's two-out RBI single. Yelich set the table with a one-out single and a stolen base.
Eovaldi dialed up the velocity early, triggering a couple of 99-mph fastballs. One of them was used to strike out Justin Upton swinging to end the first inning. It was a big pitch because it stranded Andrelton Simmons, who tripled.
Mathis' two-out home run in the second inning gave the Marlins a two-run edge.
The Marlins broke things open with a five-run third, causing the Braves to relieve Wood after 2 1/3 innings. Miami sent 10 to the plate in the frame.
Hechavarria got the inning rolling with a single, followed by Yelich's single. A one-out walk to Polanco filled the bases, and Donovan Solano lined an RBI single to left. Ed Lucas added a two-run single, and Mathis narrowly missed blasting a grand slam. But with the bases full, the Miami catcher delivered a two-run double off the wall in left-center.
Despite trailing by seven runs, the Braves had a chance to make it interesting in the fourth inning when they loaded the bases with two outs. But the potential of a big inning ended when Dan Uggla lifted a popout to Polanco in foul ground at third base.
Eovaldi received defensive help in the seventh inning to keep the Braves off the board. Paul Janish doubled to right, and pinch-hitter Jose Constanza singled to center. Janish tried to score, but he was thrown out at the plate on Jake Marisnick's one-hop toss. The inning ended with Hechavarria making a twisting, acrobatic catch in short left field on Jordan Schafer's soft pop fly.
Aside from a couple of jams, Eovaldi was in complete command.
"Any time you put up some crooked numbers, and get a little cushion, [the starter is] going to settle down," Mathis said. "Nathan threw the ball really well. It was definitely nice to get some runs up there."