O'Sullivan (3-6) allowed two runs on four hits for the Royals, who have won two of their last three games. Mike Aviles and Kila Ka'aihue both hit a solo home run while Yuniesky Betancourt posted two hits, an RBI and a run scored in the win.
Mitch Talbot started on the hill for the Indians and suffered the loss. Talbot (9-13) was charged with three runs on five hits over five innings of work. Jayson Nix doubled and scored a run for the Indians, who have lost five straight games overall.
The Royals scored twice in the first inning for an early lead.
Aviles hit a one-out solo home run, his seventh of the season. Billy Butler followed with a walk, then Wilson Betemit singled before another walk to Ka'aihue loaded the bases. On the next at-bat, a throwing error by Luis Valbuena on a ball hit by Betancourt allowed Butler to score.
Another run in the top of the third gave the visitors a 3-0 advantage. Betancourt laced a one-out single, headed for third on a double by Alex Gordon and crossed the plate when Lucas May grounded out.
Cleveland scored twice in the seventh inning and drew within one. Shelley Duncan walked leading off and headed for third on a Nix double. Philip Humber entered from the Royals bullpen and walked Matt LaPorta to load the bases. When Valbuena grounded out to second base, Duncan came home.
The next batter was Jordan Brown, and during his at-bat, a pickoff attempt was mishandled by Butler at first base and the ball rolled behind the base line, allowing the alert Nix to race home. Brown ended up flying out before Drew Sutton fanned to end the frame.
KC won the season series, 8-7...Talbot fell to 1-7 over his last 12 starts...The Royals outhit the Tribe, 8-5...It was the fifth homer of the year for Ka'aihue...KC was 0-for-11 with runners in scoring position...Cleveland's Trevor Crowe stole two bases...Soria's 2010 ERA is now 1.58.