Lindor hit a 3-2 pitch from reliever Danny Barnes (2-3) over the right field wall for his 15th home run.
Indians reliever Bryan Shaw (3-4) got the last out of the top of the 10th inning to get the win.
Cleveland starter Danny Salazar, in his first major league appearance since June 3, allowed one hit in seven scoreless innings, with eight strikeouts and no walks. Salazar was activated off the disabled list prior to the game. He had been sidelined since June 6 with right shoulder soreness.
With the Indians leading 1-0, Salazar was removed after seven innings and 86 pitches. Andrew Miller came in to pitch the eighth inning, and the first batter he faced, Justin Smoak, deposited the first pitch down the right field line. The ball was hit just high enough to clear the wall near the foul pole for Smoak's 27th home run of the season, which tied the game at 1-1.
Toronto's Kevin Pillar led off the third inning with a single, but was erased when Ryan Goins grounded into a double play.
Blue Jays starter Marcus Stroman pitched 7 2/3 innings, throwing 117 pitches and allowing one run on five hits, with seven strikeouts and five walks.
Salazar and Stroman traded zeroes in the first three innings as both pitchers faced the minimum nine batters.
Salazar retired the side in order in the top of the fourth, but in the bottom of the fourth the Indians reached Stroman for a run.
With one out, Lindor drew a four-pitch walk. Michael Brantley singled to right field, moving Lindor to third. Blue Jays manager John Gibbons and the team trainer then visited the mound to check on Stroman, who seemed have an issue with the index finger on his right hand.
After a brief conference, Stroman remained in the game and Edwin Encarnacion hit a sharp grounder to third that should have been an inning-ending double play. But third baseman Josh Donaldson bobbled the ball and had to settle for one out, which he got by throwing out Encarnacion at first. But Lindor scored on the play, giving Cleveland a 1-0 lead.
NOTES: Indians LHP Ryan Merritt was optioned to Triple-A Columbus. ... RHP Corey Kluber, whose start was pushed back two days because of a stiff neck, will start Sunday vs. Toronto. It will be Kluber's first start since July 15. ... The Blue Jays placed RHP Aaron Sanchez on the 10-day disabled list due to a blister on his right middle finger. It's the fourth time this season Sanchez has been placed on the DL due to a blister on that finger. To take Sanchez's spot on the roster Toronto recalled RHP Chris Smith from Triple-A Toronto. ... The Blue Jays also activated RHP Joe Smith from the disabled list and designated for assignment RHP Jeff Beliveau.