After Kansas City took a 1-0 lead on Eric Hosmer's double-play grounder in the first, Cleveland tied the score in the third. Aaron Cunningham singled off the glove of third baseman Moustakas, scoring Jose Lopez from third.
The Indians' best chance at rallying from their 4-1 deficit came in the sixth, when they loaded the bases off Mendoza with no outs. Hafner sent a deep drive to the left field wall off reliever Tim Collins for a sacrifice fly, scoring Michael Brantley.
Collins quelled the threat by striking out Duncan and retiring Jack Hannahan on a groundout as part of his two-inning stint. Aaron Crow and Jonathan Broxton followed with one scoreless inning apiece, with Broxton earning his second save.
Broxton retired Jose Lopez to start the ninth, but Jason Kipnis singled. After Aaron Cunningham flied out, Michael Brantley walked on a 3-2 pitch and Asdrubal Cabrera flied out.
The game was delayed for several minutes in the fifth when Kipnis got something in his right eye while batting. Trainer Lonnie Soloff attended to him, but was unable to determine the cause of the discomfort. Kipnis drew a walk in that at-bat and singled in his final two plate appearances.
"I have no idea what happened," Kipnis said. "All of a sudden, it just felt like a ton of eyelashes got in there. Then I started scratching it, but I had pine tar on the glove, so that irritated it even more and it started getting swollen shut. I had to open my stance up, so my back eye could see because I couldn't see much of anything out of my front one."
Cleveland first baseman Casey Kotchman, who is in an 0-for-22 slump, did not play. He is batting .140 with two homers and four RBIs. Right fielder Shin-Soo Choo missed his second straight game with tightness in his left hamstring.
NOTES: OF Grady Sizemore, who had back surgery March 1, ran in the outfield and played catch Wednesday, and is scheduled to hit off a batting tee this weekend. ... The Indians begin a three-game series against Los Angeles on Friday at Progressive Field. RHP Justin Masterson will face RHP Jered Weaver.