PHILADELPHIA -- Henderson Alvarez has found success by simply throwing low strikes.
Alvarez (5-3) allowed two runs -- one earned -- and seven hits. He is 3-0 with a 0.78 ERA in his last seven starts.
"I've been working hard to keep my pitches down in the zone," Alvarez said through an interpreter. "All my pitches, curveball, fastball and change."
A.J. Burnett (5-7) gave up three runs and five hits, striking out eight in seven innings. A poor defensive play by left fielder Domonic Brown cost Burnett three runs in the fourth inning.
The Marlins have won two of the first three in the four-game set. They had lost eight of their previous nine games in Philadelphia before this series.
Steve Cishek struck out the side in the ninth for his 18th save in 19 tries.
The Phillies are 1-4 since a season-high five-game winning streak that included a three-game sweep at Atlanta and two wins in St. Louis. They are only 17-23 at home.
Miami improved to .500 at 39-39 and trails NL East-leading Washington by only 2½ games.
The Marlins had runners on first and second with two outs in the fourth when Marcell Ozuna hit a liner to left that should have ended the inning. But Brown froze on the ball instead of taking a step back and it sailed over his head for an RBI double.
"That play has to be made," Brown said. "I told A.J. I was sorry about it. It was a hard-hit line drive. I made a break on it in and that definitely was a big mistake. I'm definitely upset at myself."
Saltalamacchia followed with a two-run double to left-center to make it 3-0. He was 1 for 15 with nine strikeouts off Burnett before the hit.
"Salty put a great at-bat together and drove in a couple runs. He did a great job behind the plate, too," Marlins manager Mike Redmond said.
Brown, an All-Star last year when he led the Phillies with 27 homers, has played shaky defense. He is hitting just .217 with five homers.
The Phillies scored an unearned run in the fifth to cut it to 3-1. Ben Revere reached on second baseman Derek Dietrich's throwing error and scored on Chase Utley's sacrifice fly to deep center.
Brown's RBI single in the sixth got them within 3-2. Marlon Byrd started the inning with his third hit and advanced on a groundout before scoring on Brown's liner to right-center.
Burnett began his career with the Marlins, going 49-50 in seven seasons. He is 2-2 with a 2.59 ERA in his last four starts after going 1-4 with a 7.25 ERA in his previous six.
Alvarez has allowed just four earned runs in his last seven starts. He started his turnaround against the Phillies on May 22 when he tossed four-hit ball over seven innings.
"He's pitching with confidence and he's starting to understand what he can do and how good he can be," Redmond said.
Alvarez pitched out of a jam in the second. He struck out Brown with one out and runners on first and third. He then retired Burnett on a bouncer to third to leave the bases loaded.
"Alvarez had real good secondary stuff and moved the ball around," Saltalamacchia said.
Phillies OF Tony Gwynn Jr. struck out as a pinch hitter in the seventh. He's hitless in his last 23 at-bats. ... The Marlins placed SS Adeiny Hechavarria on the 15-day disabled list because of a right triceps strain. They called up INF Donovan Solano. ... Alvarez hasn't allowed a home run in 54 2-3 innings. ... Injured Phillies ace Cliff Lee (elbow strain) will face hitters Friday. He could make a rehab start next week. ... The series finale is Thursday night, with Cole Hamels (2-4, 2.76 ERA) going for the Phillies against Tom Koehler (5-6, 3.74 ERA).