CHICAGO -- James Shields did not have his best stuff, but the hot bats of the Kansas City Royals helped him earn a win anyway.

The Royals continued to torment the Chicago White Sox at U.S. Cellular Field on Sunday afternoon by sweeping a three-game series with a 6-3 win to stay within 1 1/2 games of the first-place Detroit Tigers in the American League Central.

The win was the seventh straight and 12th in the past 16 games for Kansas City (36-32), which has won 10 of its last 11 games on Chicago's south side. The Royals, who've won six straight games against division opponents, next head to Detroit on Monday for a four-game series.

"We put it on all cylinders this series," said Shields (8-3), who picked up his second straight win despite lasting only six innings. "We pitched, we hit, we played some good defense. We drew our walks. We had good situational hitting and good timely hitting. I think this is the first series all year that we really hit on all cylinders, so it's really nice to see."

Shields allowed 10 hits and runners reached scoring position in all but the second inning against him. The White Sox (33-37) just could not capitalize, stranding 13 runners -- including two in the ninth against closer Greg Holland. They also stranded 32 in the series.

"When you get a guy like Shields (and) you're able to get some guys on base, you need to figure out a way to get a big hit and we obviously didn't," said Chicago designated hitter Adam Dunn, who went 1-for-5 and struck out three times with runners in scoring position. "It's three games. You're going to lose games and you're going to win games. We had a good series before it and a bad one this time. We've got an off day (Monday), so hopefully come back Tuesday and go get 'em."

One notable missed opportunity happened in the third, when Shields escaped a jam with two on and two out. White Sox first baseman Jose Abreu hit a long fly ball to center that looked like it might have a chance to get over the fence, but it was caught by center fielder Jarrod Dyson for the third out.

"Shields has a way of really grinding through innings and making big pitches when he needs to, and I don't know if that was a turning point," Royals manager Ned Yost said. "I was glad the ball stayed in the ballpark, though."

First baseman Eric Hosmer and catcher Salvador Perez (2-for-3) led the way offensively for Kansas City, with each clubbing long home runs to account for the Royals' first five runs.

Right-hander Andre Rienzo started for Chicago and took his fourth straight loss. Rienzo has posted a 9.00 ERA in those four defeats, after allowing six runs (all earned) on six hits and four walks against the Royals.

"He was very erratic," White Sox manager Robin Ventura said. "In the one inning, he hit somebody, walked somebody and gave up a homer. You have to keep the ball in the yard and give us a chance. Anytime you start putting guys on and creating your own trouble, that becomes a problem."

Abreu (2-for-4) and center fielder Adam Eaton (3-for-4, run scored) led the way offensively for the Chicago (33-37), which has dropped four straight and fell to a season-low four games under the .500 mark.

The Royals started the game by picking up where they left off in a 9-1 win Saturday. They scored two runs on four hits in the first off Rienzo, with a two-run homer to center by Hosmer highlighting the inning.

The White Sox scratched out a run in their half of the first on a triple by Eaton, who scored on a balk that got Yost ejected, but Kansas City kept building its lead. The Royals scored three more runs in the third on a long homer by Perez to make it 5-1 before Dyson rolled an RBI single up the middle for a 6-1 lead in the fourth -- one batter after a replay ruling allowed third-baseman Mike Moustakas to stay on second base after initially being called out on a fielder's choice ground ball.

The White Sox cut the lead in half in the bottom of the fourth on a two-run double by right fielder Alejandro De Aza, but Shields didn't allow another run. Four Royals relievers threw three scoreless innings to preserve the lead, with Holland closing it out for his American League-leading 20th save.

NOTES: White Sox manager Robin Ventura started C Adrian Nieto on Sunday against the Royals to give struggling C Tyler Flowers a day off. ... The White Sox will host a private panel discussion and luncheon Tuesday at U.S. Cellular Field called "White Sox Baseball: A History of Cuban Stars." Sharing their perspectives will be former White Sox players Minnie Minoso and Orlando "El Duque" Hernandez, along with current Sox players Nieto, Jose Abreu, Alexei Ramirez and Dayan Viciedo. Pedro Gomez of ESPN will moderate the discussion. ... Royals 3B Danny Valencia, on the 15-day disabled list with a sprained muscle in his left hand, took batting practice again and is nearing an injury-rehab assignment.