KANSAS CITY, Mo. — Jose Abreu is reaching some significant milestones with others in reach, but they are not transitioning into a winning record for the Chicago White Sox.

Abreu homered in an 8-3 loss to the Kansas City Royals on Monday, becoming the first player in White Sox history to hit at least 25 home runs in his first three major league seasons.

Abreu needs five home runs and four RBIs to join Albert Pujols as the only players in major league history with 30 home runs and 100 RBIs in their first three seasons. The homer total may be difficult to reach with only a dozen games left on the schedule.

"I think that's something I can accomplish, but, I mean, of course it's tough because of the short amount of games that we have, but, of course, it's in the picture," Abreu said through a translator. "I'm just glad that I have this opportunity, because after what I passed through the first half, the second half has been very good."

Abreu has turned it up several notches, reaching base in 42 of his past 45 games, hitting .370 with a .417 on-base percentage and a .641 slugging percentage. He has 14 home with 40 RBIs in that span, which began August 2.

The Royals went 14-5 against the White Sox this year.

"It's tough playing against them because we have to play perfect," Abreu said. "They have all the ingredients to be a successful team, and I think that everybody has seen that. They won the World Series last year and they are a very tough team. I think that it's desire. Their desire to win, their hunger to win games and to be good. And for me that is the main point for them."

Yordano Ventura (11-11) gave up nine hits, struck out five and walked one, picking up his first complete-game victory.

Ventura had allowed 10 runs, 17 hits and six walks in 11 1-3 innings in losing his previous two starts. He threw only 16 pitches in a 10-batter span to end the fifth and into the seventh.

Kendrys Morales homered off Carlos Rodon (7-10) in a four-run fifth. Morales homered in back-to-back games, bringing his total to 29. The last Royal to hit 30 home runs in a season was Jermaine Dye, with 33 in 2000.

"They're a good ballclub," Rodon said. "Guys that have been in the game for a while and just understand that, make me throw pitches and get deep in the count, and they did a really good job of that. They swing the bat well, but our guys swung the bat well, too. Some hard balls hit and some home runs, and that's baseball."

Paulo Orlando and Alcides Escobar homered in the second for the Royals. Eric Hosmer drove in two runs with a pair of singles, giving him 97 RBIs.

Billy Burns had three hits, was hit by a pitch, stole a base and scored two runs.

Carlos Sanchez also homered for the White Sox.

"It wasn't our day," Sanchez said. "When a pitcher has his day it's tough for us to hit."

Todd Frazier added an RBI single and had two hits off Ventura.

"He's throwing 97, 98 (mile per hour)," Frazier said late in the game. "That's tough to pick up, tough to lay off, too, as well, because it looks like a strike and comes off. He had good command, basically."

TRAINER'S ROOM

White Sox: INF Tyler Saladino (sore left calf) was out of the lineup for the third consecutive game. "We could play him, but I think an extra day would be best for him," White Sox manager Robin Ventura said. ... DH Justin Morneau (neck discomfort) returned to the lineup after missing the previous six games and went 2 for 4 with a double and scored a run.

UP NEXT

White Sox: RHP James Shields, who is 0-5 with a 9.37 ERA in his past nine starts, will start Tuesday at Philadelphia. RHP Jake Thompson will start for the Phillies.

Royals: RHP Edinson Volquez, who gave up nine runs on seven hits and four walks in 3 1-3 innings in a Thursday loss to Oakland, will start the series opener at Cleveland. The Indians will counter with RHP Josh Tomlin.