All three homers came off Sale (3-8), who lost for the first time in six starts. It's the second time this season Sale has allowed three homers; he also did it in his Opening Day outing against the Seattle Mariners on March 28.
"I'm supposed to be a big part of this team, a big part of this pitching staff, and I've probably been the biggest crutch," Sale said. "I know who I am and who I'm supposed to be for this team, and I haven't been anything close. I'm 3-8; that's absolutely embarrassing. On a team like this, they need me to be better, and I haven't been there for them.
"I'm standing before you as frustrated as I've ever been."
Sale gave up five runs and a season-high nine hits in 5⅔ innings. He also allowed five runs in his previous start, June 26 against the Chicago White Sox.
"It wasn't good," Red Sox manager Alex Cora said. "Just a lot of pitches in the zone. I know he's disappointed."
Sale came in 5-1 with a 1.60 ERA in nine career games in Toronto, but he couldn't extend that streak of dominance. Instead, he allowed at least four earned runs for the third time in three meetings with the Blue Jays. He is 0-2 with a 7.98 ERA against Toronto this season and has allowed 23 hits to Blue Jays batters over 14⅔ innings.
"I'm not locating fastballs, my changeup is terrible, breaking ball is hit or miss," Sale said. "I just haven't been myself for a while, and that's obviously frustrating. It's the same thing over and over."
Sale isn't expected to pitch again until after the All-Star break, meaning he will get at least nine days off before facing the Los Angeles Dodgers at Fenway Park.
"Hopefully, when he comes back, we'll get him back on track," Cora said.
Drury went 3-for-4 and came within a triple of the cycle. He singled in the third and doubled in the eighth.
Blue Jays right-hander Jacob Waguespack (1-0) allowed three runs and six hits in five-plus innings for his first career win.
"That's the second time I've seen him pitch in the big leagues, and he's been really good," Toronto manager Charlie Montoyo said.
Waguespack was pressed into action after Wednesday's original scheduled starter, right-hander Sean Reid-Foley, pitched 3⅓ innings of no-hit relief in Tuesday's 10-6 loss. Instead, Toronto used right-hander David Phelps to open for Waguespack, who was recalled from Triple-A Buffalo to make his second career appearance.
Rafael Devers hit a two-run single off Waguespack in the third, but Gurriel halved the deficit with a two-out homer, his 15th, in the bottom half.
Christian Vazquez restored the two-run lead with a solo homer in the fourth, his 13th and third in the past three games.
Jansen tied it with a second-deck drive in the bottom half, his sixth of the year and fourth in six games.
Drury ended Sale's night with a two-out homer in the sixth, his seventh and first since June 5.
Waguespack left after Vazquez singled to begin the seventh. Left-hander Tim Mayza followed and struck out Jackie Bradley Jr. before Chavis doubled. Right-hander Daniel Hudson came on to face pinch hitter Eduardo Nunez, who flied out. Hudson ended the threat by striking out Mookie Betts.
Hudson worked the eighth, and Ken Giles pitched a 1-2-3 ninth for his 13th save in 14 opportunities.
Blue Jays: RHP Marcus Stroman (pectoral cramp) might need an extra day of rest before his next start or possibly a stint on the injured list. Stroman left Saturday's start against the Kansas City Royals in the fifth inning. He is listed as Toronto's starter for Thursday's series finale. ... OF Teoscar Hernandez (right shoulder) sat for the second straight day.
Toronto has scored five or more runs in five straight games and in 13 of the past 14.
YOU'RE A STAR
Red Sox SS Xander Bogaerts was one of three injury replacements named to the American League All-Star team Wednesday. Bogaerts went 0-for-4 with four strikeouts.
Attendance was 16,883, just 542 more than Toronto's Triple-A affiliate, the Buffalo Bisons, drew for a 5-4 home win over Lehigh Valley.
Blue Jays: Reid-Foley was optioned to Buffalo to make room for Waguespack.
Red Sox: C Oscar Hernandez was assigned to Triple-A Pawtucket.
Red Sox: RHP Hector Velazquez (1-3, 5.31) will make his eighth start of the season in Thursday's series finale. Velazquez also has made 13 relief appearances.
Blue Jays: If Stroman can't go Thursday, Toronto could promote LHP Thomas Pannone from Triple-A. Pannone has made 23 appearances for the Blue Jays this season, including two starts. He is 2-3 with a 5.91 ERA.
Turner, Nationals beat Cubs 7-2 for 4th straight win
Trea Turner reached base four times and scored twice, Yan Gomes and Howie Kendrick each drove in two runs and the surging Washington Nationals beat the Chicago Cubs 7-2 on Saturday.
Braves sign C Cervelli after release from Pirates
The first-place Atlanta Braves have signed catcher Francisco Cervelli and immediately plugged him into the starting lineup against the New York Mets.
Brewers opt to DFA Opening Day starter Chacin
The Milwaukee Brewers have designated Opening Day starter Jhoulys Chacin for assignment.
Dodgers mulling rest, shortened outings for Ryu
As Hyun-Jin Ryu reaches an unfamiliar workload, the Dodgers are mulling extended rest days to mitigate potential fatigue.
NL batting leader McNeil activated off IL for Mets
Jeff McNeil will be available off the bench for the Mets in their game against the Braves on Saturday.
Nats' Ross set to start on schedule vs. Cubs
Washington right-hander Joe Ross, who left his most recent start after getting struck on the right leg by a comebacker, is expected to return for a start Friday as the Nationals continue their three-game road series against the Chicago Cubs.