CHICAGO — While the Chicago White Sox face a near impossible task to reach the postseason, they have made life miserable this week for division rivals with better odds.

Carlos Rodon struck out a season-high nine over six innings, Adam Eaton doubled twice and scored two runs and the White Sox downed Kansas City 7-2 on Friday night.

The Royals lost for the sixth time in nine games and remained four games out of the second AL wild card. Detroit beat Baltimore to pull even with the Orioles for the final postseason berth.

The White Sox took two of three against the Tigers earlier this week.

“When you can beat division rivals and good, quality teams, it kind of shows the quality of team that we have here that we really haven’t produced on a consistent basis,” Eaton said. “I know I’ve been preaching consistency, but it’s truly what has lacked within our game.”

Rodon (7-8) ran into trouble in the sixth when he loaded the bases. Manager Robin Ventura kept him in, and he fanned Paulo Orlando on his 116th pitch for the third out and move to 5-0 in his last seven starts.

“It’s huge. It helps me build my confidence as well,” Rodon said. “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.”

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.

Kendrys Morales had a two-run single in the first inning for Kansas City. Lorenzo Cain started for the first time since Aug. 30 following a wrist injury and reached base three times with a single and two walks despite pain when he squeezes the bat.

“That shows his value,” manager Ned Yost said. “He finds a way to produce.”

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.

“He was great,” Ventura said. “Innings where they started to get guys on and it got a little dicey, he’s finding a way to reach and find something else, another level.”

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.

Dan Jennings got five outs and Tommy Kahnle worked the ninth for the White Sox, who have won five of seven. They remain four games under .500, though, and eight games out of the final playoff spot.

“When you take three games from division rivals that are atop the division, it’s fun to do,” Eaton said. “It should instill confidence in us.”

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. “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.”

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.

UP NEXT

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