The Marlins completed their opening homestand with a 5-2 record.
"The goal is to try to win every series and we were able to do that," Marlins third baseman Casey McGehee said. "We had a chance to go for a sweep today. We had our chances, but now we have to go on the road and try to keep the momentum going."
Amarista celebrated his 25th birthday with the pivotal homer.
"I was happy," Amarista said. "Instead of me getting gifts from my teammates, I gave a gift to the team. After all that we went through this series, to get a `W’ the way we did and come through on my birthday is something I’m not going to forget."
Will Venable and Tommy Medica singled with one out in the seventh. Eovaldi was able to get Yasmani Grandal to ground out before Amarista came to the plate.
Batting for pitcher Ian Kennedy, Amarista drove the ball over the right-field wall on the ninth pitch of the at-bat for a 3-1 lead.
"He’s a little guy, but he’s got a little sock on the pull side," Padres manager Bud Black said.
Amarista, a center fielder, was held out of the starting lineup, but came through when he got his chance.
"Some guys were giving me a hard time, you always play a guy on his birthday," Black said. "We didn’t start him, but he sort of showed me I guess."
Kennedy (1-1) was sharp, using his fastball and curveball and allowing one run and three hits in six innings. He struck out five before exiting in favor of Amarista.
"It’s a good birthday gift for him," Kennedy said. "If he does that every single time, that’s pretty awesome."
Four relievers then helped the Padres end a four-game losing streak, including two against the Marlins to begin the series. Huston Street pitched the ninth for his second save.
"No doubt it was a good win. You hate to leave on a loss, especially a sweep," Black said.
Miami got a run back in the bottom of the seventh with Jeff Baker’s pinch-hit RBI double.
San Diego’s Yonder Alonso had a sacrifice fly in the eighth to extend the lead to 4-2.
It was the first time this season San Diego had scored at least four runs in a game.
"No doubt we’ve got to get the bats going," Black said. "I’ve said that repeatedly over the last three to four days. You look at some of those averages and they’re obviously a little low. We need those guys to start getting some hits."
Giancarlo Stanton pushed his RBI total to 12 in the fourth with a base hit to drive in Christian Yelich, who tripled to lead off the inning. Stanton already has a career-high RBI total for April.
NOTES: Stanton posted nine RBIs in April in each of the last three years. … It was the first career pinch-hit home run for Amarista. … Miami begins a three-game series at Washington on Tuesday, with RHP Henderson Alvarez (0-1, 9.00) facing LHP Gio Gonzalez (1-0, 1.50). . San Diego plays at Cleveland on Monday, with LHP Robbie Erlin (0-0, 0.00) taking the mound against RHP Corey Kluber (0-1, 13.50).