CLEVELAND -- Kris Medlen allowed five hits over 6 1/3 innings and Alex Rios connected for a home run that launched some unintentional fireworks, leading the Kansas City Royals to a 2-0 win over the Cleveland Indians on Tuesday night.
Medlen (4-1) stifled the Indians before Royals manager Ned Yost turned things over to his top-ranked bullpen. Ryan Madson struck out two in the seventh, Wade Davis got through the eighth and Greg Holland worked around a two-on, no-out mess he created in the ninth for his 31st save.
Rios homered in the fifth inning off Josh Tomlin (5-2) for the Royals, who won for just the third time in 11 games as they close in on a probable AL Central title.
The Indians, who pulled back to .500 for just the second time since April by winning the series opener, fell to 13-6 since Aug. 25.
Rios put the Royals ahead 2-0 with two outs in the fifth by hitting his fourth homer, a shot onto the pedestrian patio in left that prompted an accidental celebration in Progressive Field. As Rios rounded first, fireworks exploded above the ballpark, a tradition usually reserved for any homer hit by an Indians player.
TV cameras caught the fireworks technician with his hands clutching his head after his quick-trigger mistake, which prompted a chorus of boos from the small crowd.
It was a hard-luck loss for Tomlin, who had won his previous five starts. The right-hander gave up two runs and four hits in his second complete game this month. After giving Rios' homer, Tomlin retired 13 of 14.
Medlen was making just his fifth start since bouncing over from the bullpen last month. The right-hander missed all of last season following Tommy John surgery.
The Royals took a 1-0 lead in the second on Perez's RBI single after the Indians failed to catch Mike Moustaskas' foul pop behind the plate with two outs.
Catcher Yan Gomes yanked off his mask, and looked skyward but couldn't locate the high pop, which fell untouched about 15 feet from the batter's box as Tomlin and third baseman Giovanny Urshela helplessly looked on. Moustakas made the Indians pay by following with a double off the center-field wall and scored on Perez's clutch hit.
The Royals entered batting .280 with two outs -- 37 points higher than the major league average.
Indians: Ace Corey Kluber has been cleared to start Thursday's series finale against Yordano Ventura after being sidelined with a right hamstring injury. Kluber did some infield drills before Tuesday's game and was cleared by Cleveland's medical staff. The reigning Cy Young winner has been out since Aug. 29.
Royals: LHP Danny Duffy had his shortest outing this season against the Indians, who knocked him out with a four-run first inning on May 6. Duffy is allowing lefties to hit just .132 against him in his last 10 starts.
Indians: RHP Danny Salazar will make his third start this season against the first-place Royals. He's 1-1 with a 5.54 ERA. In his last start, Salazar surpassed 175 strikeouts, the third Cleveland pitcher to reach that plateau in 2015.