Salvador Perez collected two hits and drove 3, in the opener of a three- game set.
Felipe Paulino (4-6) worked six innings for the win, allowing six hits and three runs with nine strikeouts.
"He really threw the ball well," said Royals manager Ned Yost of his starter. "We just have to get it into his head that if he makes them swing the bat, he'll be tough to beat. Great way to end the year for him."
Michael Cuddyer hit a two-run homer for the Twins, who fell to 4-20 in September.
Kevin Slowey (0-8) was tagged in defeat for 10 hits and five runs in 5 2/3 frames.
KC forged ahead with a four-run sixth thanks to Butler's RBI double, a Perez sacrifice fly, solo homer from Moustakas and a run-scoring hit by Escobar.
The Royals led 6-3 in the eighth when Johnny Giavotella's sac fly scored Perez, and it was a four-run margin for the visitors in the ninth on a Perez RBI single.
In the first, Cabrera singled with one out, then Butler's hit moved him to third and Eric Hosmer's fly to right plated him.
"I got a hanging slider there," Cuddyer said.
Cabrera finished 2-for-3 and reached the 200-hit plateau, becoming the first Royal since both Johnny Damon and Mike Sweeney reached the mark in 2000...Minnesota is 61-99 and is in danger of losing 100 games for the first time since 1982, when it finished last in the AL West with a 60-102 mark.