Instead, Toronto Blue Jays third baseman Mike McCoy made a lunging catch of Cabrera's liner. That left it up to the rookie, and Hosmer singled on the next pitch to give the Kansas City Royals a 3-2 victory to snap a four-game losing streak.
"That was an unbelievable catch," Hosmer said. "I started to put my arms up. I'm just looking at the ball and all of a sudden you see him (McCoy) just come flying out of nowhere to make a catch like that."
Royals manager Ned Yost figured Hosmer would deliver the game-winning hit after Cabrera was robbed.
"I just knew Hosmer was going to get a hit," Yost said. "I said there's no way we're not going to win this game in this inning. There would probably be no justice if he didn't get a hit that last inning especially the way Melky drilled a ball to third."
Hosmer had a hand in all three of Kansas City's runs with two RBIs and scored a run. Getz led off the Royals 11th with a bunt single off Francisco and stopped at second on Brayan Pena's groundball single to left. Alcides Escobar moved the runners up with a sacrifice bunt. Alex Gordon was walked intentionally to load the bases with one out. After Cabrera lined out to third, Hosmer delivered the game-winning hit.
Joakim Soria (4-3), who was removed from the closer's role May 30 after blowing three saves in a week, picked up the victory. He did not allow a hit in two innings. Yost said Soria would be going back to the closer's role.
Francisco, the seventh Toronto pitcher, gave up a run on three hits and a walk.
Felipe Paulino, who was making his second start and third appearance for the Royals since being acquired May 26 from Colorado, held the Blue Jays hitless until Jayson Nix singled to leadoff the sixth.
The Jays got an unearned run in the fourth when Yunel Escobar reached first on Mike Aviles' throwing error to lead off the inning. He advanced to second on a wild pitch, took third on a groundout and scored on Jose Bautista's grounder.
The Royals answered with an unearned run in the bottom of the fourth when Hosmer was safe at first on Escobar's throwing error to start the inning. He scored on Aviles' two-out triple, the first hit Brandon Morrow allowed.
Paulino exited in the seventh when he gave up a run on two hits and a groundout. Juan Rivera and J.P. Arencibia led off the innings with singles. Aaron Hill's fielder's choice ground out scored Rivera.
In his three games with Kansas City, Paulino has a 0.56 ERA, allowing one run on eight hits in 16 innings.
The Royals tied it in the bottom of the seventh when Marc Rzepczynski walked three, including Hosmer with the bases loaded. He threw only one strike in 13 pitches before being replaced by Octavio Dotel.
"The three walks was the turning point there to extend the game," Blue Jays manager John Farrell said. "That's a spot in the lineup that we thought, coming into the series, that's clearly where we thought his presence would be. It was a small strike zone that everybody was dealing with the whole night."
Morrow held the Royals to one unearned run and two hits over six innings, while striking out five and walking three.
RHP Vin Mazzaro, who was 0-0 with a 22.74 ERA in two May appearances, was recalled from Triple-A Omaha after the game and will start Tuesday against the Blue Jays. RHP Jesse Chavez, who was called up Friday from Omaha and made one relief appearance, was sent back to the Pacific Coast League club. RHP Jesse Litsch threw up to 180 feet on a flat surface, 45-feet off a mound and will throw his first bullpen session Tuesday since going on the Blue Jays' disabled list May 20 with a right shoulder impingement. "He had no ill effects and had a full range of motion," Farrell said. "We'll be getting him into a simulated game in four or five days. He'll have to make multiple starts in rehab because of the nature of the injury." When OF Mitch Maier struck out as a pinch hitter in the ninth it was only his 24th at-bat, although he has been with the Royals all season. Farrell said 1B Adam Lind, who came off the DL Saturday after missing 24 games with lower back stiffness, will play the field one day and be the DH the next.
New York Mets ace Jacob deGrom exits start early with side tightness in return from lat issue
Mets ace Jacob deGrom left his start Sunday against the Diamondbacks after throwing two warm-up pitches before the sixth inning.
Pittsburgh Pirates put Colin Moran on IL, add Ke'Bryan Hayes to 60-day list
The Pirates put infielder Colin Moran on the 10-day injured list with a strained left groin and moved infielder Ke'Bryan Hayes (wrist) to the 60-day IL. Pittsburgh also claimed outfielder Ben Gamel off waivers.
Twins and Tigers rained out, doubleheader on July 16
— The Minnesota Twins' series finale against the Detroit Tigers was postponed Sunday because of rain.
Fantasy baseball forecaster: Team hitting ratings
Stay ahead of the game and optimize your fantasy baseball hitters with our forecaster, which provides a rolling 10-day outlook of every team's hitting matchups as well as the potential for stolen bases.
Fantasy baseball forecaster for Week 6: May 10-16
Set your lineups for the week ahead in fantasy baseball with our forecaster preview, which features pitcher rankings, two-start pitchers, hitter ratings, schedule observations and more.
Fantasy baseball forecaster: Pitcher projections for the next 10 days
Keep up to date on who is pitching -- and how well they're expected to do -- with our forecaster, which provides a rolling 10-day outlook of every team's probable starting pitchers with game score projections.