Cleveland, OH (SportsNetwork.com) - Roberto Perez had three hits, including his third home run, and Jason Kipnis drove in four runs in the Cleveland Indians' 7-5 win over the Kansas City Royals to avoid a series sweep.

Kipnis hit a three-run homer in the third inning that gave Cleveland the lead, and he was credited with an RBI on a sixth-inning groundout. Michael Bourn had two hits and scored twice.

Danny Salazar (3-0) struck out seven in six innings but allowed four runs, and the beleaguered Cleveland bullpen only allowed an unearned run in the final three innings.

"I thought he threw the ball well," said Perez. "The beginning of the first inning, he was throwing the ball a little up, but we made adjustments."

Royals starter Yordano Ventura (2-2) avoided getting ejected for a third straight start, but he struggled in the loss. He was charged with five runs on six hits and four walks in 5 1/3 innings but only struck out one batter.

"I thought he threw the ball good. He made some mistakes over the middle of the plate," Royals manager Ned Yost said.

Eric Hosmer hit a two-run home run and Kendrys Morales also drove in two for the Royals.

Ventura, appealing a seven-game suspension for his role in last week's benches-clearing incident with the White Sox, was sharp early but ran into trouble in the third. Perez and Bourn opened the inning with back-to-back singles, and Kipnis followed by hitting his first home run of the season to give Cleveland a 3-2 lead.

In the fifth, Royals shortstop Alcides Escobar was hit in the head by a Salazar pitch and had to exit the game with a cheek contusion. Unlike a recent series with Oakland that saw Kansas City intentionally hit an opponent twice, the game remained under control.

"There's no fracture," said Royals manager Ned Yost. "He's got good jaw strength."

Lorenzo Cain led off the next inning with a single and Hosmer followed up with a two-run homer to the opposite field to put the Royals back in front.

Ventura was again unable to hold the lead. After David Murphy grounded out to start the sixth, Lonnie Chisenhall doubled and came around to score on Perez's double which knocked Ventura out of the game. Bourn greeted Franklin Morales with Cleveland's third straight double, and he scored after a wild pitch and Kipnis groundout.

Cleveland's bullpen, which entered the day with the third-worst ERA in the league, took over for Salazar after six innings. Zach McAllister retired six of the seven he faced with three strikeouts, only allowing a single to Christian Colon.

In the eighth, Perez took Ryan Madson deep to extend Cleveland's lead to 7-4.

Cody Allen entered to record the save but ran into trouble. Alex Gordon doubled and moved up to third on an error, and a one-out hit from Omar Infante scored Gordon. This brought the tying run to the plate, but Allen picked up his fourth save by getting Paulo Orlando and Colon to fly out.

The Royals began the game with back-to-back singles and Morales plated two with his two-out hit.

Game Notes

All three of Salazar's wins have followed Cleveland losses ... The Royals struck out 11 times ... Perez entered the game with no hits in his last 18 at- bats ... Prior to the game, Cleveland added reliever Ryan Webb to the roster and designated outfielder Jerry Sands for assignment ... Each team returns to the field Thursday with Cleveland starting a four-game series at home against Toronto and Kansas City hosting Detroit.