Cleveland won its third straight, producing eight runs over the first five innings and finishing with 16 hits.
Shin-Soo Choo had an RBI double in both the second and fourth innings for Cleveland and Kipnis drove in Choo in the fourth with a fielder's choice grounder. Kipnis then singled in two more runs in the sixth.
Kansas City battled back on Billy Butler's two-run homer in the sixth and a two-run base hit from Salvador Perez in the eighth.
Chris Perez ended the Royals' comeback hopes by working a perfect ninth for his 39th save. The victory went to starter David Huff (3-0), who gave up three runs on eight hits with five strikeouts in six innings.
Will Smith (6-9) was roughed up for six runs on nine hits in three innings to take the loss.