ST. LOUIS -- To hear Kendrys Morales tell it, luck is finally on his side.
But the Kansas City Royals' designated hitter/outfielder has been more than just lucky the past week.
Morales homered and recorded his sixth straight multi-hit game on Thursday to lead the Royals to a 4-2 victory over the St. Louis Cardinals.
Kansas City won for the fourth time in five games and took the two-city, four-game series three games to one.
"Things are falling for me," Morales said.
Wade Davis recorded his 19th save in 21 opportunities.
Morales, a designated hitter playing right field for the second straight night, doubled in the sixth inning off Mike Leake (5-6) to push the lead to 3-1. Morales, who went 3 for 4, has 16 hits in 24 at-bats over the six-game run. He went 12 for 16 in the series and started in the outfield for the first time since 2008.
Since going 1 for 15 in a four-game set with Cleveland on June 2-5, Morales has been on fire. He was hitting .191 on June 5, but has gone 32 of 69 since to push his average to .262.
"I felt like before, I was making good contact," Morales said. "It was just a combination of bad luck that played into it as well."
"He's picking us up, he's on fire offensively," Royals manager Ned Yost said, "He's doing a very solid job in the outfield for us."
St. Louis manager Mike Matheny said his club has never had any success against Morales.
"He was a game-changer, this year and last year," Matheny said. "He's been getting great at-bats."
Morales is 25 of 53 (.472) lifetime against the Cardinals with five homers and 13 RBI. His 456-foot drive in the eighth inning off Tyler Lyons ties him for the longest home run by a visiting player at Busch Stadium III, which opened in 2006.
Kansas City reliever Dillon Gee (3-2) picked up the win allowing one run in two innings.
Moss ripped his 17th homer of the season off Royals starter Chris Young, who gave up one run and one hit over four innings, but walked six.
The drive, which went 477 feet according to the Cardinals, is the longest in the history of Busch Stadium. It is the second-longest this season behind Giancarlo Stanton's 490-foot blast for Miami on May 6, in a 6-4 win over Philadelphia.
"I hit it hard," Moss said. "I know I'm strong and I know how far I can hit it when I get a hold of one."
Leake gave up three runs, two earned, in seven innings. He struck out four and walked one.
"There were a couple of pitches I'd like to take back," Leake said.
Gee's victory gives the Royals' bullpen a 16-5 (.762) mark, the highest percentage in the majors. His lone mistake came to Peralta in the sixth inning.
"I'm just glad I was able to do the job," Gee said. "I felt good."
Matheny was ejected in the sixth inning by home plate umpire Mike Everitt. It was Matheny's first ejection of the season and 12th in four-plus season as a manager.
GOLD GLOVE MORALES
Morales' last appearance in the field before Wednesday came on Sept. 27, 2008, while with the Angels.
He handled all four chances on Wednesday and one on Thursday.
Royals: RHP Kris Medlen gave up five earned runs in 5 2/3 innings of a rehab start for Triple-A Omaha on Thursday against Memphis. Medlen, who was placed on the DL with right rotator cuff inflammation on May 11, gave up six hits. He struck out five and walked two in a 5-2 loss.
Cardinals: OF Stephen Piscotty was given the night off after he tweaked his left ankle in the 12th inning of Wednesday's 3-2 loss. He is listed as day-to-day. ... INF Aledmys Diaz was held out of the lineup for the third straight game. He fouled a pitch off the area around his right eye on Monday.
Royals: RHP Ian Kennedy (6-6, 3.96) will face RHP Jeremy Hellickson (5-6, 4.23) in the first of a three-game series in Philadelphia on Friday. Kennedy stuck out 11 in seven innings in a 6-1 win over Houston on Sunday.
Cardinals: LHP Jaime Garcia (5-6, 4.09) takes on Milwaukee RHP Matt Garza (1-0, 2.81) in the opener a three-game series in St. Louis on Friday. Garcia is 10-5 with 2.71 ERA in 19 appearances against the Brewers.
Sources: Kansas City Royals, 3B Hunter Dozier agree on 4-year, $25M extension
The Royals and third baseman Hunter Dozier have reached agreement on a four-year, $25 million extension that starts this season, sources told ESPN's Jeff Passan.
Harper calls NL East baseball's best division
Bryce Harper declares that the NL East is the best division in MLB and says he loves playing for the Phillies.
MLB's noncompetitive behavior issues are now out there for the world to see
It was always there -- tanking, manipulating service time -- but Kevin Mather and the Mariners put a spotlight on the whole thing. It's impossible to ignore now.
DJ LeMahieu thrilled to play in front of crowd, knows 'how much it means to a lot of fans to watch the Yankees'
On Sunday, DJ LeMahieu and the New York Yankees will have a chance to feel that "adrenaline and excitement" that last season lacked, when they play in front fans against the Toronto Blue Jays to Steinbrenner Field.
Albert Pujols reiterates he'll decide future after season with Los Angeles Angels
Following last week's misinterpreted Instagram post, Albert Pujols reiterated his stance that he hasn't decided whether to retire after this season
Revisiting Miguel Cabrera's 2020 homers
As Miguel Cabrera attempts to get to 500 career home runs, relive all the dingers he hit during the 2020 season.