Roderick Myers walked following Palmer's triple. On his steal of second, Phillips tried to make a tag before he had the ball, allowing it to deflect off his glove into center field. Palmer scored and Myers took third on the play before Jeff King's sacrifice fly made it 3-1.
Rich DeLucia (6-4), the last of seven Angels pitchers, took the loss.
The Angels put runners on first and third with none out in the 12th off Gregg Olson (3-2), who then struck out the side.
Rookie Brian Bevil worked a perfect 13th for his first major league save.
Anaheim stranded a season-high 18 runners, and Kansas City left 12 on base.
Anaheim starter Jason Dickson was forced from the game in the seventh when Larry Sutton lined a ball off the back of his right elbow. The ball caromed to first for an out, with Dickson picking up the painful assist.
Dickson was taken to a hospital and X-rays revealed only a bruise.
Tim Salmon gave Anaheim a 1-0 lead in the fifth with a sacrifice fly to score Darin Erstad. It was Salmon's 118th RBI, passing Wally Joyner's 1987 total of 117 for the second highest single-season total in club history. Don Baylor had 139 in 1979.
Kansas City tied it 1-1 on Jermaine Dye's seventh homer in the seventh, immediately before Sutton's shot chased Dickson.
Dickson allowed four hits and one run in 6 2-3 innings. He matched his career-high with eight strikeouts.
Royals starter Jim Pittsley allowed five hits in five innings.