KANSAS CITY, Mo. -- Homer Bailey has endured some tough times since he pitched no-hitters in 2012 and 2013. He showed flashes of nearly that kind of dominance in his latest start.
Ian Kennedy pitched a perfect eighth and Willy Peralta followed in the ninth for his first save to complete the two-hitter.
"We executed a lot of pitches tonight," Bailey said. "It was about time the pitching stepped it up. Our offense has been outstanding all year. To be able to go out and do that and pick them up was great."
Bailey (1-1) entered the game with an ERA of 9.00 in two starts this season, including his last outing when he gave up seven runs, eight hits and two walks in five innings against Seattle on Monday. He had one win in his last 22 home starts, and had not won in an American League ballpark in nearly seven years.
"In his first two starts his split and curveball have been really good," Royals manager Ned Yost said. "Where he's been getting in trouble has been the mistakes (with the fastball). There haven't been a lot of them; there have been four of five a game that have cost him.
"Going into the game today (the key was to) limit the mistakes with your fastball, because your split and curveball are pretty good pitches. That's exactly what he did. He threw the ball extremely well."
Everything was working for Bailey, who gave up two hits to eighth-place hitter Brad Miller. He was able to eliminate mistakes with his fastball as well, which made him almost unhittable.
"We got ahead," Bailey said. "We were pretty efficient, and we got some ground balls we needed. We got some strikeouts early. We had three or four pitches working. If you can do that and stay within yourself you can have some success."
Cleveland manager Terry Francona was impressed.
"He kind of sped our bats up with his fastball and then he spun the breaking ball," he said. "We knew there were chances there were going to be times like this. (It's) hard to go through, but gotta keep fighting, gotta fight for everything you can get."
Jefry Rodriguez (0-1) gave up two runs and five hits over 5 2/3 innings in his first start with Cleveland. He was acquired in the offseason from Washington in the trade that sent catcher Yan Gomes to the Nationals.
"I thought he really represented himself well," Francona said. "I mean he made a couple of mistakes that he paid for, but a lot of nights we're sitting here saying the kid pitched great and he got a win. I thought he really handled himself well."
The Royals got on the board in the bottom of the third. Martin Maldonado led off the inning with a double to left center, snapping an 0-for-17 stretch. He moved to third on a flyout to left and scored on Mondesi's two-out single.
The Royals added another run in the fourth when O'Hearn hit his second homer of the season, 429 feet to right field.
"I was looking heater, but he hung a change-up and I reacted to it," O'Hearn said.
Merrifield had his second hit of the night, a two-out single in the seventh that drove in Hunter Dozier to give the Royals a 3-0 lead.
Indians: SS Francisco Lindor is likely headed to a minor-league rehab assignment as early as Monday. Lindor had a workout on Saturday, running the bases for the second day in a row. Cleveland manager Terry Francona said he'll go to Louisville to join Triple-A Columbus, if there are "no ill effects, no repercussions of a second-day workout." Lindor has not played this season due to a right calf strain and a left ankle sprain.
Royals: CF Billy Hamilton was kept out of the lineup for a second straight game with a mild MCL sprain and a bone bruise on his left knee suffered when he crashed into the wall Thursday. Royals manager Ned Yost says he's about ready.
Indians RHP Cody Anderson and RHP Rodriguez were recalled Triple-A Columbus. Rodriguez made his first start with the Indians, while Anderson was added to the bullpen. RHP Jon Edwards and OF Jordan Luplow were optioned to Columbus to make room after the bullpen had to throw 7 1/3 innings on Friday.
The Indians also are expected to recall OF Carlos Gonzalez from Columbus before Sunday's game. Gonzalez hit .348 with a home run and three RBI in six games at Columbus.
Indians: RHP Corey Kluber (1-2, 3.86 ERA) picked up his first win of the season on April 9 in Detroit, when he gave up two runs (one earned) on seven hits, eight strikeouts and a walk in six innings.
Royals: RHP Jakob Junis (1-1, 5.74 ERA) will go in the finale of the seven-game homestand.
More AP baseball coverage: www.apnews.com/MLB and www.twitter.com/AP-Sports
Nats stun Dodgers on Kendrick's 10th-inning slam
Howie Kendrick hit a tiebreaking grand slam off Joe Kelly in the 10th inning, and the Washington Nationals overcame a three-run deficit with a late rally to beat the Los Angeles Dodgers 7-3 Wednesday night and advance to the NL Championship Series.
Muncy takes Strasburg deep for 2-run homer in 1st
Max Muncy gets the scoring started for the Dodgers with a two-run home run to right field.
Hernandez cranks solo homer
Enrique Hernandez grooves a solo home run to left-center field to start the second inning.
Buehler strikes out 7 Nats in Game 5 loss
Walker Buehler strikes out seven batters and only spares three hits as the Dodgers are eliminated by the Nationals.
Suzuki helped off field after being hit by pitch
Kurt Suzuki takes a pitch from Walker Buehler off his left wrist that skims his face sending him to the ground before being helped to the dugout.
Rendon, Soto tie game with back-to-back jacks in 8th
Anthony Rendon and Juan Soto hit back-to-back solo home runs off Clayton Kershaw in the 8th inning to tie the game at 3-3.