Royals top White Sox 2-1 behind Cain home run

Lorenzo Cain hit a solo home run and five Kansas City pitchers combined to allow seven hits in the Royals' 2-1 victory over the slumping Chicago White Sox on Saturday.

Danny Duffy and Peter Moylan combined for six scoreless innings. Joakim Soria (2-1) worked out of a seventh-inning jam and Wade Davis pitched a hitless ninth for his 11th save in Kansas City's second straight win over the AL Central leaders.

Chicago has lost eight of 10.

Cain's leadoff shot to center in the sixth off Miguel Gonzalez (0-1) made it 2-0 after Eric Hosmer's first-inning sacrifice fly.

The Royals won for the sixth time in eight games despite needing bullpen help with Duffy on a pitch limit. He allowed four hits in 4 1/3 innings.

Royals third baseman Mike Moustakas, activated off the disabled list after missing more than two weeks with a left thumb injury, went 0 for 4 with three strikeouts and misplayed a bunt to load the bases with nobody out in the seventh.

The White Sox snapped a 13-inning scoreless streak on Jose Abreu's bases-loaded double-play grounder in the seventh.

Soria replaced Brian Flynn and induced Abreu's double play, then got Todd Frazier to ground to third. Soria worked a perfect eighth in his first two-inning stint since 2011.

Not even more lineup tinkering by manager Robin Ventura could get the White Sox out of their offensive funk.

Jerry Sands played first base and hit cleanup, with Melky Cabrera moved to fifth. Abreu hit second for the second straight day and was the DH and Tyler Saladino was again at shortstop in place of struggling Jimmy Rollins.

Rollins struck out pinch-hitting for Sands in the eighth for Chicago, which has scored four runs in three games.

Gonzalez allowed six hits, struck out eight and didn't walk a hitter over six innings in his third start since being called up from Triple-A.