CLEVELAND — Pinch-runner Elliot Johnson scored from third base on a wild pitch by reliever Matt Albers in the ninth inning, giving the Kansas City Royals a 2-1 win over the Cleveland Indians on Monday night.

Johnson sprinted home and slid in safely after Albers' pitch got under catcher Carlos Santana and went all the way to the backstop.

The Royals have won 11 of 13 and in getting to .500 for the first time since May 21 moved past Cleveland into second place in the AL Central.

Aaron Crow (3-2) struck out two after putting the potential go-ahead run at third in the eighth. Greg Holland stranded the tying run at third in the ninth for his 15th save in 17 tries.

Bryan Shaw (0-1) couldn't protect a 1-0 lead for Cleveland starter Carlos Carrasco, charged with just one run and four hits in 7 1-3 innings.

Santana homered in the sixth off Kansas City starter James Shields.

The Indians got the tying run to third in the ninth when Michael Bourn doubled and advanced on a wild pitch. But Holland struck out Mike Aviles and retired Jason Kipnis on an easy grounder to second to end it.

The Royals scored one run in the eighth and ninth to eke out the win.

With the score tied 1-all, Billy Butler opened the Kansas City ninth with a double off Shaw, who walked Lorenzo Cain and was pulled by manager Terry Francona for left-hander Rich Hill. David Lough dropped a bunt toward third that Hill fielded before losing his balance and falling in the infield grass.

Albers got ahead of pinch-hitter Miguel Tejada before uncorking a pitch that went to the backstop. It bounced to Santana, who quickly flipped the ball to Albers covering the plate but Johnson slid in just ahead of the tag.

Blanked for nearly eight innings by Carrasco, the Royals tied it in the eighth on Eric Hosmer's bloop RBI double.

Chris Getz, twice robbed of hits earlier by left fielder Michael Brantley, singled and Alcides Escobar sacrificed. Francona came out and replaced Carrasco, who was making his first start since serving a seven-game suspension and remains in search of his first win since June 29, 2011.

Rather than bring in struggling lefties Hill or Nick Hagadone to face left-handed hitters, Francona went with Shaw, who retired Alex Gordon on a weak popup before Hosmer dropped his hit over shortstop Aviles' head and in front of charging center fielder Bourn to tie it at 1.

It didn't figure to be a pitchers' duel with both starters coming in with blemished resumes.

Shields hasn't won since April 30, and Carrasco has dropped his last seven decisions and was twice suspended since his last victory.

Santana broke up the scoreless matchup by leading off the sixth with his 10th homer, a shot into the stands in right. The homer came on Shields' first pitch of the inning and 101st of the night.

Shields has pitched far better than his record shows. Although he has given up more than three runs just once in 13 starts, the right-hander can't catch a break. The Royals are averaging 2.2 runs in his outings.

Carrasco was pitching for the first time since serving a suspension for throwing at New York's Kevin Youkilis on April 9. In his previous outing, the right-hander was rocked for six runs and 10 hits in four innings by the Detroit Tigers, who didn't have to worry about Carrasco throwing inside because he rarely tried.

However, Carrasco challenged the Royals on the inner half of the plate and retired the first 13 in order before Cain singled sharply to right.

Cain stole second but Carrasco got Lough and Mike Moustakas on groundouts.

The Indians twice loaded the bases against Shields but couldn't come up with a big hit.

In the third, they loaded the bases with one out on a single and two walks, but failed to score as Shields got Aviles to foul out and then fanned Kipnis — on a questionable third strike — to end the threat.

Kipnis again failed to deliver in the fifth, striking out after the Indians jammed the bases with two outs.

NOTES: Indians All-Star closer Chris Perez will pitch one inning for Double-A Akron on Tuesday in his second rehab appearance. Perez has been sidelined with a strained shoulder. Barring a setback, Perez will be activated Friday when the Indians open a three-game series with Minnesota. ... The Royals entered the series with the AL's lowest ERA at 3.39. Kansas City's bullpen came in with the best ERA (2.67) in the majors. ... Indians 1B Nick Swisher missed his second game in a row with a sore shoulder. He received a cortisone shot and is not expected back until Friday at the earliest. ... Kipnis and RHP Corey Kluber shared the AL player of the week award for June 10-16. Kipnis batted .524 with two homers and four RBIs in six games, while Kluber went 2-0 with a 0.56 ERA over 16 innings. ... There were 349 dogs in attendance as the Indians hosted "Puppypalooza."