KANSAS CITY, Mo. — Josh Naylor homered in the ninth inning, sending the Cleveland Indians to a 5-4 victory over the Kansas City Royals on Wednesday night.

Naylor greeted Wade Davis (0-1) with a leadoff drive to right for his second homer. Nick Wittgren (2-1) struck out the side in the eighth for the win, and James Karinchak worked the ninth for his third save.

“I was trying to be patient for something over the heart of the plate,” Naylor said. “I knew I could set the tone for the inning, whether it was a hit or a walk. Thankfully I was able to put one out.”

Cleveland trailed 4-0 after five innings. It has rallied to win in the first three games of the four-game set.

“You just keep playing, and you play through frustration,” Cleveland manager Terry Francona said. “This is a hard way to win, and I don’t know if we want to draw this up all the time."

Royals manager Mike Matheny had a different perspective.

“That one hurts more than maybe any other one this year,” Matheny said. “They all hurt. They’re all the same as far as the effort we give. But some losses just seem to sting worse than others, all things considered. We get a good pitcher on the ropes and have a lead.

“We’ve been very accustomed to putting those away. We’ve served on the other side that they did, being able to keep coming back. But it didn’t turn out the way we needed.”

Indians ace Shane Bieber allowed four runs, three earned, and nine hits in six innings. He struck out nine to extend his major league record to 19 straight games with at least eight Ks.

“We made some mistakes behind him that didn’t help,” Francona said. “Still, he had six innings and three earnies, with a bunch of strikeouts.”

Kansas City right-hander Brady Singer permitted three runs and four hits in 5 2/3 innings.

The Royals jumped in front on Hunter Dozier’s fifth homer, a 430-foot solo drive to left-centre in the second. Dozier’s last seven hits, and 10 of 11 overall, have been for extra bases.

Kansas City added an unearned run in the fourth when Ryan O’Hearn scored on shortstop Andrés Giménez’s throwing error. Jorge Soler made it 4-0 with a two-run double in the fifth.

The Indians finally got to Singer for three runs in the sixth. Singer walked Jake Bauers and hit José Ramírez with a pitch before Eddie Rosario laced a two-run double to left-centre. Singer then walked Franmil Reyes and committed a balk.

Matheny and pitching coach Cal Eldred then argued with home plate umpire Angel Hernandez, leading to their ejections.

Naylor’s run-scoring groundout ended Singer’s night. On the way to the dugout, Singer yelled at Hernandez and was ejected.

“He pitches with emotion all the time,” Matheny said of Singer. “That’s part of what makes him as good as he is.”

Ramírez’s solo drive in the eighth tied it at 4. In his last 45 games, Ramirez is batting .438 (21 of 48) with 8 homers and 17 RBIs from the seventh inning on.

TRAINER’S ROOM

Indians Rosario returned to the lineup after leaving Monday’s game with soreness in his left knee.

Royals RHP Kyle Zimmer (left trapezius strain) is improving, but he still doesn’t have full range of motion after his shoulder muscle locked up on him last week. The Royals won’t have him throw until he has full range.

ROSTER NEWS

Indians catcher Roberto Pérez was placed on the 10-day injured list with a fractured right ring finger. Perez was injured back on April 13 when he was crossed up on a pitch from Karinchak. His batting average has dropped from .238 to .131 since the injury. The Indians promoted catcher René Rivera from Triple-A Columbus and designated outfielder Ben Gamel for assignment.

UP NEXT

Indians right-hander Triston McKenzie (0-1, 6.27 ERA) starts on Thursday, looking to bounce back from a rocky outing against the White Sox. Left-hander Danny Duffy (4-1, 0.60 ERA) gets the ball for the Royals. He has allowed two earned runs in 30 innings.

___

More AP MLB: https://apnews.com/hub/MLB and https://twitter.com/AP_Sports