"This isn't how we're going to win games," manager Mike Matheny said. "We've got to find something. This isn't working."
The teams combined for only seven baserunners -- three on hits -- through the first six innings. Only two runners reached second.
That would change in the seventh, at least for Kansas City.
Royals left fielder Alex Gordon ended the game's scoreless streak when he sent a 93-mph fastball from Shelby Miller 417 feet, over the Cardinals' bullpen in right-center, to lead off the inning. The Royals rank last in homers (25) this season, behind St. Louis (30).
"It wasn't a strike, he was just sitting fastball and got it," Miller said. "It's kind of weird seeing him pull that pitch out for a homer, but it was a good hit."
Kansas City followed up the homer with two straight singles, the second a close call at first base with Royals center fielder Lorenzo Cain running down the line.
Cardinals manager Mike Matheny challenged the ruling in a one-run game with little offense, but the call stood. Both runners would come around to score when third baseman Mike Moustakas doubled to the gap in left-center to extend the lead.
"It's frustrating to let them have the game like that. It's on me, for sure," Miller said. "We had all the momentum I felt like. Even though our offense probably wasn't doing what they wanted, I still felt like we had the momentum.
"And right there I gave it all up."
Miller worked around any further damage in the seventh, but after allowing a leadoff single in the eighth, he was lifted for left-hander Randy Choate, who retired the first batter before walking the next. Both runners would come around to score with a single back to center after Choate was lifted for Jason Motte. The Royals added another run on a sacrifice fly.
Miller, who had surrendered a career-high seven runs in his last outing, ended his night after seven-plus innings, allowing four runs on seven hits.
"I thought Shelby was very, very good for six innings," Matheny said. "After the sixth, it just snowballed in a hurry. Up until that point, it was one of the best we've seen him throw this season."
After both teams searched for offense in the first six innings, the Royals produced seven hits and a walk in the final three. The Cardinals' offense, in what has become a trend in recent games, never showed.
Following Sunday's 8-0 shutout loss in which the Cardinals collected only four hits, they could only find three Monday, two via singles from Matt Holliday.
Royals starter Danny Duffy allowed only one hit and one walk through six innings.
"I thought he was fantastic," Royals manager Ned Yost said. "He changed speeds, he kept the ball down, he was just right on top of his game tonight."
St. Louis, which hasn't scored a run in 20 innings, has combined for two runs and 11 hits in the last three games. Only Saturday's 2-0 victory against the Giants went in the Cardinals' favor.
The Cardinals were nearly blanked Friday, too, but avoided a shutout with a four-run eighth-inning in a 9-4 loss.
"It's simple," catcher Yadier Molina said. "We're not getting hits. No runs. It's very simple."
The Cardinals moved to 2-6 on their current homestand, and continued to fall further behind Milwaukee, now trailing the National League Central leader by five games after being 1 1/2 games back a week ago.
Monday marked the first time the Cardinals have been shut out in back-to-back games since last August against Cincinnati and Pittsburgh. The Cardinals hadn't been shut out in consecutive home games by six or more runs since 1937.
"We've had the conversations we need to have, we just have to keep working through it," Matheny said. "That's all there is to it. What we're doing now isn't going to work and they know that. We just have to get better, that's all there is.
"It's amazing, because you see the work they're putting into it, but it comes down to production. It's just a tough spell right here, and we have to figure out how to get through it."