CHICAGO — The Kansas City Royals hope to get well against the fourth-place Chicago White Sox this weekend, but only the return of Lorenzo Cain made them feel better Friday night.

Carlos Rodon struck out a season-high nine over six innings, Adam Eaton doubled twice and scored two runs and the White Sox beat Kansas City 7-2 as the Royals failed to gain ground in the wild card race. They trail the Baltimore Orioles and Detroit Tigers by four games for the final spot.

In his first appearance since Aug. 30, Cain reached base four times on a single, an error and two walks.

“That shows his value,” manager Ned Yost said. “He finds a way to produce through all that (down time).”

The 2014 ALCS Most Valuable Player had been sidelined because of a bruised left wrist.

“Trying to put the bat on the ball right now,” said Cain, who still experienced discomfort when he squeezed the bat. “Trying to do the best I can to get on base for the guys behind me and go from there.”

Rodon (7-8) fanned Paulo Orlando with the bases loaded on his 116th pitch to end the sixth inning and move to 5-0 in his last seven starts.

“It’s huge,” Rodon said of manager Robin Ventura’s show of faith. “It helps me build my confidence as well. I’m glad he trusts in me to get that last guy out. No matter how many pitches I’m at, I always want to get that last out.”

Kendrys Morales had a two-run single in the first inning for Kansas City, which has dropped six of nine.

Eaton doubled to lead off the first and fifth innings off Yordano Ventura (10-10) and scored each time on Melky Cabrera RBIs. Tyler Saladino had three hits and drove in two runs in Chicago’s third straight win over a playoff contender.

The 23-year-old Rodon struggled early this season and went on the disabled list after he sprained his left wrist slipping on the dugout steps. But the lefty has been sharp since returning.

In his career-high 24th start, Rodon allowed two runs – one earned – and six hits while lowering his ERA to 1.85 ERA in his past seven outings, all quality starts.

Jose Abreu and Justin Morneau added RBI singles as Chicago had 13 hits.

Ventura allowed five runs – four earned – and 10 hits over seven innings in taking his first loss in seven starts.

“One inning got away from me,” Ventura said of the fifth. “Overall, I felt good. … I thought I made good pitches. They hit (the ball) where we weren’t.”

Dan Jennings got five outs and Tommy Kahnle worked the ninth for the White Sox, who have won five of seven despite slim playoff hopes.

HOT SOX

Abreu went 2 for 4 to improve to 22 for 50 (.440) with 16 RBIs in his past 11 games. Saladino is 6 for 8 in the past two games.

TIRED SORIA

Yost said he’s been overusing struggling reliever Joakim Soria and planned to limit his appearances. Soria has six blown saves and eight losses.

TRAINER’S ROOM

Royals: C Salvador Perez (bruised right wrist) sat out a second straight game. “He still feels it a little bit when he swings,” Yost said. “He feels fine when he throws, so we’re definitely making progress. We’ll shoot for tomorrow.” … LHP Matt Strahm left to attend his grandfather’s funeral and was expected back Saturday.

White Sox: Struggling RHP James Shields was cleared to start Saturday after complaining of a sore back in his last outing. Shields hasn’t missed a start since 2007. “I just want to post every five days and throw 200 innings,” Shields said. “I’m obviously not going to get (200 innings) this year for the first time in nine seasons, which is disappointing.”

UP NEXT

Shields (5-17, 6.07 ERA) will face Royals RHP Edinson Volquez (10-10, 5.02) on Saturday night.