Short on sleep and down three starters, the Twins beat Central Division challenger Cleveland 7-6 on Thursday on Willi Castro's walk-off sacrifice fly at Target Field.

Trailing 6-3 after the Guardians' five-run sixth inning, the Twins rallied to win without Byron Buxton, Carlos Correa and Max Kepler, all of three of whom left the game because of injury or illness.

The Twins persevered, with a three-run, eighth inning that featured rookie Royce Lewis' tying two-run homer and Castro's long fly to right-center field on a 1-2 count, with the bases loaded and no outs in the bottom of the ninth.

The Twins now lead second-place Detroit by 2 1/2 games and third-place Cleveland by 4 1/2 in the Central Division.

There was not an available bench player left when Twins manager Rocco Baldelli sent catcher Ryan Jeffers to third to run for Christian Vázquez.

"Things weren't looking good in that game," Baldelli said. "We were behind and we had guys come in and start whacking the ball around, swinging at good pitches and hitting them hard. We always talk about finding a way in this game. This is probably a good textbook example of that."

Buxton left the game in fifth inning after he was hit on the rib with a pitch from Guardians starter Tanner Bibee. He'll have a medical imaging scan Friday morning, Baldelli said.

Afterward, Buxton said, "I feel all right," and was asked about the pain.

"You ever got hit in the ribs?" Buxton said. "I'd advise you not to get him in the ribs, I'll tell you that."

Donovan Solano pinch hit for Buxton in the fifth. Correa and Kepler each left after six innings. Correa said he aggravated plantar fasciitis that sidelined him some in the past week, and Kepler left with what the team called a migraine.

Baldelli was asked afterward if he's concerned about the three starters.

"Yes, but there's nothing we can do at this moment," Baldelli said. "When you look up and see all three guys come out of the game at the same time, it is concerning. You don't want to run out of players. We're playing an important ballgame here. It's amazing the other guys out there didn't let that get them down. It can be really difficult to deal with."

Missing three players wasn't all of it. The Twins didn't arrive home from Wednesday night's win at Houston until after 3 a.m. and Baldelli said some players probably didn't get to sleep until after 4 a.m. About 12 hours later, they were back at work.

"When you're tired and down, it's not always the easiest thing to come back and do something like this. But our guys showed up and played good," Baldelli said.

Starter Pablo López was tagged for six runs on eight hits in 5 2/3 innings but the Twins relievers stepped up. Emilio Pagán and Griffin Jax recorded the final 10 outs without allowing a run.

Guardians reliever Eli Morgan walked Vázquez — the Twins' No. 9 hitter in the batting order — to begin the bottom of the ninth. Jorge Polanco doubled in his first game back from the injured list after flying out four times before that. Jeffers came in to run for Vázquez and Alex Kirilloff was intentionally walked to load the bases.

That sent Castro to the plate after he had replaced Correa.

"I'm not going to be afraid to use all our players," Baldelli said. "Jeffers was the last guy. When that happens, you start looking at the bullpen list and deciding which of those guys is the next guy to go in. You've got to figure that out. With the winning run on third base, even if he is just a little faster, we're going to put Jeffers out there. Once you get to third base, you just run."

With three starters out, Jeffers, Castro, Polanco and others stepped forth.

"We have a great team, everybody's great, we're in first place," Castro said. "That says it all. I know that happened during the game. We feel bad about that. But I know they're going to come back anytime soon and we've got our backs."