Giancarlo Stanton did blast a home run in the sixth inning off Madison Bumgarner, but that was the lone run Miami could muster off the Giants lefty.
The Marlins found themselves down early, and in yet another start, Eovaldi had little answers for the Giants.
In his four-plus innings, Eovaldi yielded nine hits, surrendering a two-run homer to Brandon Crawford in the second inning and a three-run blast to Pablo Sandoval in the fifth.
"They were on him," Miami manager Mike Redmond said. "They were on his fastball. It looked like command, he missed a few spots. He tried to come inside on Crawford, and he hit that ball out. That pitch was up to Sandoval."
Eovaldi hadn't pitched since July 9 at Arizona, when he gave up one run on four hits in seven innings.
"He hadn't been out there in nine days, a little bit rusty," Redmond said. "Against a good fastball-hitting team, you've got to be able to hit your spots. We got down four runs in the first three innings. That's been tough to overcome for us."
Eovaldi is now 1-4 with a 13.30 ERA in five career starts against the Giants. Last Aug. 16 at Marlins Park, the Giants touched up Eovaldi for 11 runs (nine earned) on 12 hits in three-plus innings.
Eovaldi is baffled as to why he's had such a rough time against San Francisco.
"I have no idea," the Miami right-hander said. "I wish I knew. I really don't know."
It may be simply a good fastball-hitting team matched against a pitcher who relies so heavily on his fastball. Or perhaps the Giants are picking up something, maybe a pattern, as to what Eovaldi is doing. What is clear is the Marlins aren't sure what's happening.
"They've been able to hit his fastball and take advantage of any mistake he seems to make over the course of a game," Redmond said. "I don't know if they've got something on him or what. But they've been able to do quite a bit of damage to him."
Christian Yelich doubled in the third inning, extending his hitting streak to 11 games.
Given ample run support, Bumgarner breezed through six innings, allowing the homer to Stanton when he was enjoying a nine-run lead. The lefty struck out seven.
"We came back hungry today," Bumgarner said. "That's good to see, because that's what we'll have to do if we want to be in the mix of things in September and October."
Miami has now lost five straight.
When Stanton went deep with two outs in the sixth inning, it snapped a drought of 75 plate appearances without a home run. The All-Star connected for the first time since June 26 at Philadelphia, but he leads the National League with 22. According to ESPN Stats & Info, Stanton's blast was estimated at 466 feet.
With the game out of hand, Stanton was lifted after his home run, giving the All-Star a little bit of a breather.
"I know it's only a couple of innings, but it does make a difference over the course of time," Redmond said. "It was a great swing, and he hit a home run. I know he's been grinding. Get him out of there. Getting him a couple of innings off. He will be ready to go tomorrow."
Stanton now has 139 career homers, passing Miguel Cabrera for sole possession of fourth place in franchise history. Dan Uggla (154) holds the franchise record, followed by Hanley Ramirez (148) and Mike Lowell (143).
Crawford's homer put the Marlins in an immediate hole in the second. Michael Morse doubled with one out, and Eovaldi put himself in position to get out of the inning when he struck out Brandon Belt. Crawford worked an 11-pitch at-bat, fouling off five pitches with two strikes. With the count full, Crawford went deep.
The Giants did more damage in the third inning, putting up two more runs with two outs. Three straight singles produced the runs, including RBI hits by Buster Posey and Morse.
Sandoval's three-run shot in the fifth inning ended Eovaldi's night after 84 pitches.
"I made some good pitches and they got hit, and I made some bad pitches and they were hit," Eovaldi said. "It was just a tough game."