The Mariners' Stefen Romero had three hits and three RBIs, two on his fourth spring homer. Brad Miller also had three hits with two doubles. Mike Zunino hit a solo homer.
The Mariners improved their record to 17-10-3; the Royals are 11-14-2.
Hernandez said he originally was scheduled to throw six innings, but felt strong after five and 67 pitches and figured that was a good time to end his spring and start looking ahead.
"Now it's time to start a new season, and I'm ready for that," Hernandez said. "I saw everything I wanted to see. Every pitch was working really good. The first inning I was up a little bit and missed a couple pitches, but after that, I was fine. ... I feel really fresh. My arm feels good, my body feels good."
Hernandez was tagged for two runs in the first. Aoki and Billy Butler were on base with singles and two out when Alex Gordon rifled a double off the right-field wall. It rolled away from Romero, and by the time he chased it down, both runners were home.
After that, Hernandez retired 11 straight batters before Lorenzo Cain doubled with one out in the fifth and scored on Aoki's double down the left-field line.
Gordon got his third RBI with a home run down the left-field line in the ninth inning against ex-Royals reliever Ramon Ramirez.
Royals left-hander Bruce Chen lasted only four innings, giving up nine runs on 11 hits and two walks and running up 92 pitches in the process. He'll start the Royals' fifth game of the season.
Zunino, on his 23rd birthday, celebrated in the second inning by cranking Chen's first pitch high over the left-field bullpen for his second home run.
The assault on Chen continued in the third when Miller doubled and Romero blasted a home run over the right-center-field wall, his fourth. Before the inning was over, three more hits, two walks and an error by second baseman Pedro Ciriaco made it a six-run inning and an 8-2 lead for the Mariners.
Left-hander Francisley Bueno, trying to solidify his claim to the Royals' last bullpen slot, threw three scoreless innings. He gave up two hits but faced the minimum nine batters.
Royals first baseman Eric Hosmer was ejected by plate umpire Brian Hertzog after being called out on strikes in the third inning.
Up next: The Royals will bid farewell to Arizona in a 2:05 p.m. CT Wednesday game against the Padres at Peoria Stadium. Opening Day starter James Shields will get his final tuneup for next Monday's game at Detroit. He's expected to throw 60 or so pitches after approaching 100 in his previous start. Manager Ned Yost plans to play his regulars only in the first four innings. Ian Kennedy is the Padres' probable starter. Immediately after the game, the Royals will leave for Milwaukee, where they'll play their final two Spring Training games against the Brewers on Friday night and Saturday afternoon.