Nelson Velázquez continued a late-season tear for Kansas City with a three-run homer, Angel Zerpa shut down Cleveland in relief of Zack Greinke and the Royals rolled to a 6-2 victory Wednesday for a three-game sweep of the Guardians.

Zerpa (3-3) got the final out of the fourth inning and allowed three hits the rest of the way. He struck out four without a walk in the latest impressive performance by the Royals bullpen, which has been responsible for the team’s last eight wins.

Velázquez has 12 homers in 33 games since arriving in Kansas City, and 11 of those have been in Kauffman Stadium, where deep alleys and a 410-foot center field wall make it one of the most difficult ballparks in baseball to go yard.

Bobby Witt Jr. and Edward Oliveras also drove in runs to send the Royals out on their final road trip having won six of their past seven games. That includes their first sweep of the Guardians since April 12-14, 2009.

Lucas Giolito (8-14) allowed four runs, three of them earned, on seven hits and three walks in 5 1/3 innings. The rough outing came after the right-hander tossed seven innings of two-hit ball against Texas last weekend.

Greinke, the Royals’ erstwhile ace, had trouble loosening up after the first inning and was checked by trainer Nick Kenney before staying in game. He lasted into the fourth, allowing two runs on five hits while striking out five, but didn’t get far enough to snap an 11-game losing streak by qualifying for his first win since May.

Nevertheless, it was a memorable afternoon for Greinke at Kauffman Stadium. In what may have been his final home start, the 39-year-old picked up his 1,094th strikeout for Kansas City, moving past Bret Saberhagen for fourth in franchise history.

Velázquez’s three-run shot, which came after Cleveland made errors on its first two defensive plays, made it 3-0 in the first. It remained that way until the Guardians knocked Greinke from the game with two runs in the fourth.

Witt drove in a run in the bottom half to make it 4-2. The Royals added runs in the seventh and eighth to put it away.

The Guardians have yet to announce a starter for Thursday, when they begin a four-game series against the Orioles.