A day after the Guardians got a season-high 23 hits in a 13-1 romp, Greinke (3-5) and four relievers combined on a five-hitter.
“You never know how a team will respond, but to watch this team, the guys just come back and play really hard,” Royals manager Mike Matheny said. “I thought they did a real nice job all the way around today and Zack set the tone for us and his stuff was really sharp. He put everything where he wanted to today.”
Greinke struck out five and walked one in his 222nd career win.
Cleveland has lost 6 of 7 and 8 of the their last 10.