BOSTON — Dustin Pedroia snapped a slump with two doubles and three RBIs, Rick Porcello tied for the major league lead with his 15th victory, and the Boston Red Sox hung on to defeat the New York Yankees 5-3 Tuesday night.

Boston left fielder Andrew Benintendi stroked three hits in his Fenway Park debut.

Red Sox closer Craig Kimbrel began the ninth inning with a three-run lead, but he walked four, including the last three batters he faced. Matt Barnes came on and caught Mark Teixeira looking at a 2-2 pitch for his first save.

Pedroia, 6-for-31 (.194) on Boston’s just-completed 5-6 road trip, doubled home two runs in the third inning and then doubled in another in the fifth.

Benintendi, called up from the Double-A Portland Sea Dogs during the road trip, singled and scored in the third inning, hit an RBI doubled and scored in the fifth, then singled in the seventh. He is 8-for-16 in his brief major league career.

Porcello, improving to 11-0 in 12 home starts this season, notched his 100th major league win, making him the fourth active pitcher to win 100 games before age 28. Porcello (15-3) tied Toronto’s J.A. Happ and Washington’s Stephen Strasburg for the wins lead.

Porcello, the first Sox pitcher to start 11-0 at home since 1946, won for the seventh time in his past eight starts. He worked eight innings, allowing two runs on seven hits, walking one and striking out six. Porcello has walked just three in his past four starts.

David Ortiz, coming off a 4-for-30 road trip, was hitless his first two times up before an contributing an RBI single and a walk.

Yankees starter Luis Severino (1-7) gave up five runs on seven hits in 4 1/3 innings.

In a flashback to Red Sox-Yankees battles of the past, the benches and bullpens emptied after Jackie Bradley Jr. threw out Chase Headley after the New York third baseman doubled and tried to take third with his team down three runs. Porcello said something Headley didn’t like, and words were exchanged. Nothing came of it.

Brett Gardner had three hits, two of them doubles, and a walk, and Headley doubled twice and drove in a run in the loss that dropped the Yankees back to .500, 56-56.

Alex Rodriguez, in his final road series as a Yankee, did not appear in the game. He is scheduled to start Thursday night. Fenway fans chanted “Where is A-Rod?” in the seventh inning, and then “We want A-Rod” in the ninth, a chant that began small before the whole place erupted.

The Yankees wasted Gardner’s first hit in the first inning but scored in the second and third.

In the second, Starlin Castro led off with a double and scored on Headley’s one-out double. Gardner doubled to lead off the third and Porcello got two outs before Brain McCann singled home Gardner.

The Red Sox (61-50) tied it in the bottom of the inning when Benintendi singled and took third on Mookie Betts’ double before Pedroia lined a two-run single to right.

Sandy Leon led off the home fifth with a shot down the right field line that Aaron Hicks played from a double into a triple. Benintendi followed with a shot to left-center that hit the yellow line on the wall and originally was called in play for a double. The umpires got together and called it a home run. Yankees manager Joe Girardi asked for a crew chief review and the call was overturned into an RBI double.

One out later, Pedroia doubled home Benintendi and chased Severino.

Left-hander Tommy Layne, picked up off waivers from the Red Sox earlier in the day, relieved and gave up a long single to David Ortiz that scored Pedroia.

NOTES: Red Sox manager John Farrell said left fielder Blake Swihart is likely out for the season and will require surgery. Swihart is on the disabled list with an ankle sprain since June 5. Farrell also noted that left fielder Chris Young (hamstring, since late June) is set to start a minor-league rehab assignment. … Boston SS Xander Bogaerts, who went 5-for-46 on the just-completed road trip, didn’t start for only the third time this season — and first since June 28. … LHP Drew Pomeranz makes his fifth attempt at his first Red Sox win on Wednesday night when he faces Yankees RHP Nathan Eovaldi.

Rays 9, Blue Jays 2

TORONTO — Evan Longoria had three RBIs, Logan Forsythe added a homer and two RBIs, left-hander Drew Smyly pitched six effective innings and the Tampa Bay Rays defeated the Toronto Blue Jays 9-2 on Tuesday night.

Smyly (4-11) allowed six hits, three walks and two runs while striking out two over six innings to earn his second straight win.

Marco Estrada (7-5), pitching on five days’ rest as the Blue Jays have gone to a six-man rotation, needed 113 pitches to navigate five innings in which he allowed seven hits, four walks and three runs (two earned). The right-hander also hit a batter and struck out six.

Danny Barnes replaced Estrada in the sixth after the Blue Jays scored twice in the fifth to trim the Rays’ lead to 3-2.

Barnes allowed two runs on two walks and an RBI double by Longoria and an RBI single by Mikie Mahtook to extend the Rays’ lead to 5-2.

The Blue Jays (64-50) loaded the bases in the sixth when Josh Donaldson and Edwin Encarnacion singled and Russell Martin walked. They failed to score after Troy Tulowitzki popped out, Michael Saunders struck out and Justin Smoak fouled out.

The Rays (46-66) tacked on four runs against Scott Feldman in the seventh on an RBI single by Forsythe, an RBI double by Kevin Kiermaier and a two-run single by Longoria.

Erasmo Ramirez pitched perfectly over the final three innings to earn his first save of the season.

Forsythe opened the first inning with his 13th homer of the season and the second career leadoff blast. He also homered in the ninth inning on Monday.

The Rays added an unearned run in the fourth on two walks, a single and a throwing error by second baseman Devon Travis.