Gordon drove a 1-1 pitch from Ubaldo Jimenez (2-5) out to right with two outs in the fifth with Nori Aoki and Billy Butler aboard. Gordon, who led the Royals with 20 home runs last year, had gone 134 at-bats without a home run.
Gordon homered in his next at-bat, a three-run shot off left-hander Troy Patton in the seventh after Eric Hosmer walked and Butler doubled for his third hit.
The Kauffman Stadium crowd then gave Gordon a lengthy standing ovation, calling him out of the dugout. Gordon said he had "never" had a curtain call.
"I didn't know what to do," Gordon said. "They told me just to go wave my helmet. They just started yelling at me. I was downstairs enjoying the moment. They told me to come up and give the crowd a wave. It was my first. Hopefully, it's not the last. It was pretty cool. It's something I want forget.
"It's fun when we play like this and the crowd starts doing what they do. It makes it really exciting."
It was Gordon's third career multi-homer game. His six RBIs matched a Royals' season high. His four hits matched a career high, the 10th time he has accomplished that.
"Even though I was making good pitches, they found a way to hit the ball hard. I felt really good and I made a lot of good pitches," Jimenez said. "They had a good approach. I threw a lot of sinkers down and they found the hole every time. They had a really good game. There's nothing I can do but move on."
Gordon's second homer turned out to be necessary. Adam Jones hit a three-run homer off Royals reliever Aaron Crow in the ninth. It was the first runs Crow allowed in 20 relief appearances and 17 innings.
Greg Holland got the final two outs for his 12th save in 13 appearances.
James Shields (6-3) picked up his fifth win in six starts, holding the Orioles to three runs and nine hits over seven innings. Shields won back-to-back starts at Kauffman Stadium for the first time.
Shields settled down after a three-run third when he gave up five hits, including four straight to open the inning.
"The difference (was) I was getting my ground balls and they found holes," Shields said of the third inning. "I was making my pitches, trying to get a double play that inning and they were just finding some good holes."
Jimenez, who was 2-0 with a 0.46 ERA in his first three May starts, was pulled after five innings. He permitted five runs on eight hits with one walk and seven strikeouts.
"The pitch to Gordon was uncharacteristic," Orioles manager Buck Showalter said. "He had, really, just the one (bad) pitch to Gordon. He tried to go down and away, and it came back in and came into a sweet spot. He hadn't walked anybody to that point, either. Except for one pitch I thought he was good. After the first inning he was pretty crisp."
Butler singled home Aoki with two outs in the first for the first Kansas City run. Lorenzo Cain's single in the fourth scored Gordon with the other Royals' run.
RHP Dylan Bundy, the Orioles' top prospect and the fourth overall pick in the 2011 draft, is scheduled to throw an inning in extended spring Tuesday in Florida. It will be his first time to face opposing hitters since having Tommy John surgery last June 27. .Royals 2B Omar Infante, who is on the disabled list with a lower back disc irritation, has begun to hit off the tee and is taking slow rollers. .The Orioles dropped to 1-6 in Sunday games. They are 21-14 on other days. ... Both managers, Ned Yost and Showalter, won challenge reviews: Yost in the fourth inning when Gordon was called out at second, Showalter in the seventh when Cain was first ruled safe for an infield single. That was overturned.
Copyright by STATS LLC and The Associated Press
*** BESTPIX *** KANSAS CITY, MO - MAY 18: Norichika Aoki #23 of the Kansas City Royals bunts his way onto first...
Alex Gordon: 2nd player to have at least 4 hits, 2 HR, 6 RBI in game this season, joining Paul Goldschmidt of the Diamondbacks, who did it on Saturday against the Dodgers.
He's the first Royals player to do so since Jermaine Dye in 1999 against the Indians