The bullpen phone quit working at just the wrong time. The bat boy unwittingly caused a power hitter to lay down a bunt in an RBI situation.

Then in a shaky ninth inning they had an error, a hit batsman and a bases-loaded walk.

"And still we won a ballgame," Kansas City manager Ned Yost exclaimed Tuesday night after the Royals held on for a wild 5-4 victory over Cleveland.

The long-woeful and perhaps lucky Royals crept to within one game of the surprising Indians in the AL Central with the help of Bruce Chen's strong pitching and Alex Gordon's strong everything.

Chen (3-0) went seven innings and beat the Indians for the fourth straight time, stretching his personal winning streak, dating to last season, to seven games over 11 starts. Jeanmar Gomez (0-1), making his first major league start after being called up from Triple-A Columbus earlier in the day, took the loss on a night when the wind chill hovered near 30 degrees.

Gordon stole two bases, scored a run, had two hits, threw out a runner at the plate and made a terrific diving catch in left field of Grady Sizemore's sinking liner in the ninth.

"Gordon pretty much saved the game on that very nice play on Sizemore down the left-field line," said Cleveland manager Manny Acta.

Chen cruised into the seventh with a two-hitter and a 5-0 lead, and hadn't allowed an earned run in 20 innings. But then his stuff flattened out and things got strange.

After Orlando Cabrera singled for the first hit of the inning, Yost grabbed the bullpen phone to tell Blake Wood to get ready.

"But the phones went on the blink," said Yost. "So we had no communication to our bullpen."

A tired Chen kept throwing. The energized Indians kept hitting. Austin Kearns singled. Lou Marson hit a two-run double.

"Bruce gives up another hit and we're trying to get Woody up and we can't," said Yost.

Finally, it was Kansas City's finest to the rescue. The uniformed police officer near the Royals dugout used his hand-held communication device to call the officer in the bullpen and tell him to tell Wood to get ready.

"It was kind of a (mess) there for a little while but we got it straightened out," Yost said. "Don't ask me why or how or what, but every once in a while the phones shut off."

In the KC eighth with a runner on base and nobody out, Kila Ka'aihue laid down a bunt that probably puzzled every fan in the stands.

Turns out the bat boy ran between Yost and third base coach Eddie Rodriguez just as Yost was going through his signs.

"Eddie was blocked out and thought I put the bunt sign on and I never put the bunt sign on," said Yost. "That was a miscommunication. Eddie thought I'd put the bunt on and I never did. That's not a situation we want Kila bunting in."

Ka'aihue, to his credit, did get the sacrifice bunt down. But the runner was stranded and the Royals had to sweat the ninth when Joakim Soria got his fifth save in six opportunities even though the Indians loaded the bases with two outs on a single, third baseman Wilson Betemit's throwing error and a hit batsman. Shin-Soo Choo drew a walk that forced in a run.

But then Soria threw three straight called strikes to Carlos Santana to end it.

"He's a very good hitter and he was facing a good pitcher," said Acta. "Soria made three pitches there right on the black. I think everybody wants him to swing the bat, but you also have to take your hat off sometimes to the pitcher."

Gordon threw out Marson trying to score in the seventh on Michael Brantley's single.

Chen went seven innings and allowed two runs on six hits, with three walks and five strikeouts.

Gordon singled in the first and had an RBI double in the fifth. Since going 0 for 5 on opening day, he's 26 for 67 (.388) and has extended his hitting streak to a career-best 13 games..

Right behind Gordon is third baseman Betemit, who grounded a single up the middle leading off the fourth inning and stretched his hitting streak to a career-high 11 games.

Alcides Escobar singled in the third and came home on a triple by Chris Getz, who scored on Melky Cabrera's grounder. Escobar's RBI single made it 3-0 off Gomez in the fourth, then back-to-back doubles by Cabrera and Gordon in the fifth were followed by Jeff Francoeur's RBI single.

Gomez went 4 1-3 innings and gave up five runs on nine hits, with two walks and three strikeouts.

Santana had an RBI single off Blake Wood in the eighth. Brantley had three hits for the Indians.

Notes: Grady Sizemore, 5 for 9 with two doubles, two RBIs and a home run in two games since returning from knee surgery, got the night off until pinch-hitting with one out in the ninth. Early in season, Indians manager Manny Acta plans to let him play three or four games every five days or so. ... The loss kept the first-place Indians from going to 13-4 for the first time since 1988. ... The Royals and Indians came into the game ranked 1-2 in the AL in hitting.