Francisco Lindor on Tuesday made a major blunder and owned it.

“I messed up,” the All-Star shortstop said. “It’s a rookie mistake.”

Lindor’s overaggressive baserunning in the ninth inning sabotaged Cleveland’s bid at another dramatic win, while Jackie Bradley Jr homered in the 10th inning as the Boston Red Sox edged the Indians 7-6 after blowing a late lead and potential win for ace Chris Sale.

Boston’s Rafael Devers became the first player in major league history with six hits and four doubles — and he made a costly error at third base — as the Red Sox won for just the fourth time in 16 games.

Bradley drove a 2-0 pitch from Nick Wittgren (4-1) over the wall in right field for his 14th homer, allowing the Red Sox to hang on in a game that had numerous twists and turns.

Boston were on the verge of letting a win slip away before Lindor helped the Red Sox with a decision he would love to have back.

With the Indians down 6-5 in the ninth, Greg Allen singled, stole second and scored when Lindor doubled with one out into the gap in left-center. He skipped into second base in celebration and then got daring.

With rookie Oscar Mercado at the plate, Lindor inexplicably tried to swipe third and was thrown out. Mercado then flew out, ending the Indians’ final threat.

“I felt good,” Lindor said. “When I took off, I felt like I was gonna make it. Just getting ahead of myself. That was my bad. That’s on me. This one’s on me.”

Indians manager Terry Francona did not have a problem with Lindor’s gamble.

“It’s bang-bang and if he makes it, we probably win,” Francona said. “I don’t want to take our aggressiveness away, because every once in a while you are going to be out.”

The win was anything but easy as the Red Sox blew a 6-1 lead over the final four innings, costing Sale his seventh win on a night when he also made history by getting to 2,000 career strikeouts faster than any other pitcher.

Brandon Workman (9-1) got the win, despite letting the Indians tie it in the ninth on Lindor’s double.

Andrew Cashner, acquired last month from Baltimore, worked the 10th for his first career save in his 10th major league season.

Sale came in needing five strikeouts to reach 2,000. He struck out the side in the first, added his fourth in the second and Sale reached the plateau in the third by fanning Mercado on a wicked 81mph slider.

“It’s cool. It’s special,” Sale said. “I’m not a guy who is really into his stats, but I respect it. I appreciate what it means. A lot of people put in a lot of hard work to help me get there.”

In other results, it was:

‧ Yankees 8, Orioles 3

‧ Braves 5, Mets 3

‧ Nationals 3, Reds 1

‧ Giants 3, Athletics 2

‧ Blue Jays 3, Rangers 0

‧ Phillies 4, Cubs 2

‧ Dodgers 15, Marlins 1

‧ Astros 6, White Sox 2, 1st game

‧ White Sox 4, Astros 1, 2nd game

‧ Mariners 11, Tigers 6

‧ Cardinals 2, Royals 0

‧ Twins 7, Brewers 5

‧ Diamondbacks 9, Rockies 3

‧ Rays 7, Padres 5

‧ Pirates 10, Angels 7