Saunders won his third straight start, Bobby Abreu drove in three runs and Los Angeles beat Kansas City 7-2 on Sunday.
The Angels improved to 9-0 against the Royals this season and have won 33 of the last 43 games between the two clubs.
Saunders (12-7), who spent some time on the disabled list last month with a sore left shoulder, gave up 10 hits in 5 1/3 innings, but surrendered only two runs.
"It was just a battle," Saunders said. "They put some pretty good swings on some pretty good pitches. It's one of those days where I didn't have an easy inning and you have to battle through and just fight with whatever you've got. As a starting pitcher, it's always nice to get the lead and get some comfort."
Saunders has allowed four earned runs in 17 1/3 innings over three starts since he came off the DL on Aug. 26.
"Joe wasn't quite as sharp as in his last couple of starts since he came back," Angels manager Mike Scioscia said. "He was up in the zone a little bit. It seemed like he struggled to get in good counts.
"Give those guys a little bit of credit, too. They got 11 baserunners in five-plus innings off him. Joe was a little bit off, but those guys were doing something right. He had to work hard to get into the sixth inning."
Luke Hochevar (6-9), the first pick in the 2006 draft, was battered for seven runs and nine hits in 3 2/3 innings. Hochevar is 0-6 with an 8.12 ERA in eight starts since a July 25 victory over Texas.
"I had problems with my command," he said. "I'm trying to be aggressive early in the count. It's not going where I want it. I need to get that figured out. When I'm missing, I'm missing in the zone."
The Angels sent eight men to the plate in a four-run second. Mike Napoli doubled in Gary Matthews Jr. and scored on Howie Kendrick's single. Erick Aybar tripled in a run and came home on Abreu's base hit.
Abreu also had a two-run double in the Angels' three-run fourth and scored on Torii Hunter's single.
"Too many pitches down in the center of the plate, most of them flat," Royals manager Trey Hillman said of Hochevar, who retired only 11 of the 21 batters he faced. "He's got to eliminate the opportunity to put a crooked number up."
Abreu has 73 RBI in 88 games since May 25, the most in the American League over that stretch. He has driven in 89 runs on the year and is on pace for his seventh consecutive of at least 100 RBI.
"It's good to see Bobby have a big day," Scioscia said. "Not everybody was killing the ball, but we had enough guys doing their job that we were able to pressure them and get seven runs."
Miguel Olivo led off the Royals fourth with his team-high 18th homer. Brayan Pena also had an RBI single for Kansas City, which had 12 hits, but grounded into four double plays.
Left-hander Dusty Hughes, who replaced Hochevar, pitched 4 1/3 scoreless innings in his big league debut. He allowed one hit -- a single to Hunter, the first batter he faced -- and struck out five while walking two.
"I knew I just needed to throw strikes and try to keep them where they were to give us a chance to come back," Hughes said. "I didn't feel my legs until about the third inning I was out there."
The Royals have lost eight of their last nine games at Kauffman Stadium and have the worst home record in the majors at 26-44.
Angels OF-DH Vladimir Guerrero, mired in a 1-for-17 skid, rested. Scioscia said Guerrero would start Monday. ... Hillman said he would "rework the rotation" to move RHP Zack Greinke back a day or two instead of starting him Thursday on his normal day. Greinke threw a career-high 125 pitches in eight innings Saturday against the Angels. ... Aybar tripled in his first two at-bats to tie an Angels record for triples in a game.