"They made some really good defensive plays and we made a couple errors that kind of hurt us," said the Rays' Kevin Kiermaier, who hit a two-run home run. "We're not playing good baseball right now and they're taking advantage. They play pretty much error-free; you can't give them extra opportunities or they'll expose you."
The three errors, including two by shortstop Asdrubal Cabrera, tied a season high for the Rays, and the total does not include some other defensive lapses.
Morales had an RBI single and Moustakas a run-scoring double off Jake Odorizzi (6-7) as the Royals grabbed a 4-3 lead in the fifth. Morales leads the majors with 47 RBIs with two outs this season, breaking the team record of 46 set by Joe Randa in 2000.
Lorenzo Cain had a run-scoring single in the sixth, and Moustakas added an RBI single in the ninth.
Kris Medlen (3-0) allowed three runs and four hits over 5 1/3 innings in his second start and ninth appearance since returning from elbow ligament replacement surgery. Wade Davis, the third Royals reliever, got the last three outs for his 13th save.
"Sometimes you've go to give credit to the other team," Rays manager Kevin Cash said. "This is (a team with) a very relentless approach, and we've seen it now for six games.
We have to make some adjustments, but you have to credit their hitters for just continuing to put the pressure on us defensively, and from a pitching standpoint."
The Rays have lost 10 of 15.
Tampa Bay took a brief 3-2 lead in the fourth when Cabrera had a run-scoring single and Kiermaier hit his sixth homer.
Odorizzi gave up four runs and seven hits in 4 2/3 innings. He is winless in six starts, which includes a stretch of five no-decisions where the right-hander pitched at least six innings in each game. It was the fourth time in their last five games a Rays starting pitcher has failed to finish the fifth inning.
Rays catcher Rene Rivera appeared to get cut near around the mouth after Medlen's pitch deflected off Rivera's arm and struck his face in the third. After a brief treatment period with a team trainer near the plate, Rivera remained in the game and went to first base.
The Rays became the last team in the majors to reach 1 million in home attendance with a crowd of 24,372.
The Rays are 0-6 against Kansas City this season, and a loss in Sunday's series finale would mark the first time the Rays have ever gone 0-7 or worse in a season series. The Rays are 5-20 against the Royals over the last four seasons.
Royals: Manager Ned Yost said LF Alex Gordon, out since July 9 with a strained left groin, is getting close to returning. Gordon is currently on a minor league rehab assignment with Triple-A Omaha. ... OF Alex Rios was late scratch due to illness.
Rays: LHP Matt Moore should get some starts after rejoining the team next month. He was sent to Triple-A Durham Aug. 3 after going 1-3 with an 8.78 ERA in six starts following his return from elbow ligament replacement surgery. "We need Matt to pitch," manager Kevin Cash said.