With the game tied 4-4 in the sixth inning, the Royals' Eric Hosmer stroked a two-out double to knock out Twins starter Esmerling Vasquez (0-1).
Tyler Robertson came on to pitch and promptly surrendered a looping single to Abreu, putting Kansas City ahead to stay.
The Kansas City second baseman also provided a two-run single in the second inning as the Royals salvaged one victory in a three-game set.
Tim Collins (5-2) earned the win despite allowing Minnesota to tie the game with two runs in the top of the sixth.
Francisley Bueno and Aaron Crow combined for two frames of scoreless relief and Greg Holland struck out the side in the ninth for his 10th save.