With two outs in the sixth inning and Kansas City leading 5-4, Rhymes, a rookie generously listed at 5-foot-9, hit a two-run shot off Greinke to put the Tigers ahead. It was only the second home run allowed by the reigning AL Cy Young Award winner in his last eight starts.
Rhymes had to wait a few minutes before he could enjoy it, because first-base umpire Jerry Meals originally ruled that the ball hit the top of the fence. It appeared Rhymes had a game-tying triple until replays showed the ball hit the bottom of a safety railing above the wall. Umpires went inside for a look and reversed the call.
"I got to enjoy that home run a lot longer than most people. That was the longest home run jog ever," Rhymes said. "We had been looking in the dugout and they said it was a home run, but you never know."
Royals right fielder Mitch Maier, who missed catching the ball by a couple of inches, was sure the review would go against his team.
"I knew the ball hit the railing, not the yellow line on top of the fence, so when they went in to look at it, I knew what the decision would be," he said. "That's a catch you dream about -- robbing someone of a homer -- but I just couldn't get high enough."
After the game, Rhymes found a bottle of champagne in his locker, courtesy of teammate Brandon Inge.
"We're thrilled for him," Tigers manager Jim Leyland said.
Avila finished the scoring with a solo homer in the eighth, an inning after the catcher flipped over a railing and landed headfirst in the Royals' dugout while catching Brayan Pena's foul pop.
"Once I caught it and was coming over, I kind of looked just straight down, and it's a long ways down into that dugout," said Avila, who got some assistance from Royals manager Ned Yost. "They grabbed me, and thank God they did because I was going face first right into that floor."
Yuniesky Betancourt matched a career high with four hits for Kansas City, including a three-run homer.
Greinke (9-13) couldn't take advantage of an unusual amount of run support, giving up six runs -- five earned -- on eight hits and two walks in six innings.
"Early on, I wasn't sharp at all," said Greinke, who entered with the lowest ERA at Comerica Park of any opposing starter. "It got a little better, but I never had great control."
Detroit built an early 4-0 lead against Greinke. Ramon Santiago provided the first run with an RBI single in the second before the Tigers added three in the third.
The Royals, though, went ahead with five runs in the fifth. Kansas City started the inning with six straight hits, including Betancourt's three-run shot. Billy Butler ended the streak by grounding into a bases-loaded double play, but the tying run scored on the play.
In the seventh, Kila Ka'aihue was thrown out trying to stretch a single into a double before Avila's inning-ending catch, but Yost applauded Ka'aihue's decision.
"On a ball off the wall, you have to make them make a play," Yost said. "They got a perfect bounce and a perfect throw or Kila makes it. I'd have been angry if he hadn't tried."
Inge's two strikeouts gave him 1,094 in his career, leaving him five short of Lou Whitaker's franchise record. Whitaker played 1,105 more games with the Tigers than Inge has. ... Rhymes was shunned by most of his teammates when he finally arrived in the dugout after his long wait on third base while his homer was being reviewed. After about 30 seconds, though, he was mobbed by most of the roster. The homer came in his 164th career at-bat. ... Greinke needs one more inning to pass Al Fitzmorris for 10th place on the Royals' career list.