Schafer tied a career high with four RBIs, leading the Twins to an 11-5 victory over the Kansas City Royals.
Bruce Chen (2-4), the sixth pitcher for the AL Central-leading Royals, gave up five hits and walked two in the 10th.
"I didn't make good pitches and they get base hit after base hit after base hit," Chen said.
"It was another one where we could have won or lost," Twins manager Ron Gardenhire said. "We could have won all three or lost all three. Tonight was no different. We hung in there and finally had the big inning. It was a nice win for us after two tough losses."
Minnesota had lost its last four games against Kansas City and seven of eight overall in the season series. Schafer had three hits while extending his hitting streak to eight games.
"Anytime you can help your team, it's good, whether it's with defense or stolen bases or scoring runs," said Schafer, who stole a base and scored two runs.
Anthony Swarzak (3-1) picked up the victory.
Twins left-hander Tommy Milone was pulled after 5 1/3 innings, giving up four runs and nine hits. He is winless in four starts since the Twins acquired him in a July 31 trade with Oakland.
Royals right-hander Jeremy Guthrie, who was 5-1 in his previous six starts, exited after six innings. He gave up five runs and nine hits.
ROYALS ADD NIX
The Royals claimed INF Jayson Nix off waivers from the Pittsburgh Pirates, where he was 4 for 36 in 16 games. Nix, 32, began the season with Philadelphia and also played in the minors with Durham, the Rays' Triple-A club.
Dozier went 3 for 5 for his ninth three-hit game of the season. He is hitting .400 with eight RBIs since Aug 22.
Royals RHP Kelvin Herrera pitched the eighth to extend his scoreless inning streak to 23 1/3 innings.
Twins: 1B Joe Mauer didn't start for the first time since returning Aug. 11 after missing 34 games with a right oblique strain. "I watched him last night," Gardenhire said. "I thought he was dragging a little bit. You've got to do it for him. He's in the training room, getting treatment every day like everybody else." Mauer walked as a pinch hitter in the 10th and stayed in the game to play 1B.
Royals: LHP Scott Downs (stiff neck) was activated from the disabled list. ... 1B Eric Hosmer (fractured right hand) participated in batting practice for the first time since going on the disabled list Aug. 1. ... RHP Michael Mariot (right hamstring injury) was recalled from Triple-A Omaha and transferred to the 60-day disabled list.
Twins: Rookie RHP Trevor May (0-3) is looking for his first big league victory Friday night at Baltimore. He gave up five runs and 11 hits in 5 1/3 innings in an 8-6 loss to Detroit on Saturday.
Royals: LHP Jason Vargas will start Friday night's series opener against the Indians. He has a 1.24 ERA in his 10 wins and a 6.29 ERA in his six losses.