TORONTO -- Mark Buehrle wasn't at his best, but he was exactly what the Blue Jays needed to snap a three-game losing streak.
Buehrle (7-1) allowed two runs and six hits in six-plus innings. He walked a season-high five and struck out two.
"Buehrle is on some kind of roll and he was the perfect guy tonight," Blue Jays manager John Gibbons said. "We've been struggling."
Buehrle came in with an AL-leading 1.91 ERA, but saw that rise to 2.04, the same as Detroit's Max Scherzer.
"It didn't feel like it was an easy game," Buehrle said. "Obviously, the five walks shows that."
Bautista hit a three-run homer in the first inning and Lawrie, who returned to the lineup after missing six games with a sore right hamstring, added a two-run shot in the sixth as the Blue Jays avoided what would have been their first four-game sweep to the Angels.
Lawrie said he enjoys playing behind the quick-working Buehrle, calling the left-hander's pace "unprecedented."
"Mark is amazing at what he does," Lawrie said. "You know he's going to go out there and compete for us ever single night, he's going to give us a chance to win."
Both of Toronto's homers came off Angels starter C.J. Wilson, who allowed five runs and six hits in six innings. Wilson (4-3), winless in back-to-back starts for the first time this season, walked three and struck out eight, including four straight during one stretch.
"Two changeups, one to Bautista and one to Lawrie, really cost him," Angels manager Mike Scioscia said. "In between, he settled down and pitched well."
The Blue Jays jumped on Wilson in the first, scoring three runs before the left-hander could record his first out. Steve Tolleson singled on a ball that Wilson couldn't handle, Melky Cabrera walked and Bautista hit a second-deck drive to left, his team-leading 10th.
Mike Trout cut it to 3-2 with a two-out, two-run double in the third. Twenty of Trout's 40 hits this season have been for extra-bases.
Adam Lind drew a one-out walk off Wilson in the sixth and Lawrie followed with a first-pitch homer into the second deck.
C.J. Cron hit a solo homer off Delabar in the eighth and Casey Janssen, who was activated off the disabled list Sunday, finished in the ninth. Janssen had not pitched this season because of a sore back.
Blue Jays outfielder Colby Rasmus left after six innings with tightness in his right hamstring, suffered after making a running catch to retire Pujols in the fifth. Bautista moved from right to center, Tolleson went from second to right, Lawrie moved from third to second and Juan Francisco came in at third.
Gibbons indicated that Rasmus might require a stint on the disabled list, but Rasmus himself said he didn't expect to be sidelined for long.
Francisco made it 7-3 with a two-run single off Cory Rasmus in the eighth.
This was the fifth time in 437 career starts that Buehrle has walked more than four batters. ... The Angels placed 3B Ian Stewart (left hand) on the 15-day DL and recalled INF Luis Jimenez from Triple-A Salt Lake City. Stewart left Sunday's game in the seventh after being hit by a pitch. Scioscia said Stewart was still "very sore" Monday. ... Blue Jays SS Jose Reyes got the day off. ... Toronto put RHP Sergio Santos (elbow) on the 15-day DL, optioned C Erik Kratz to Triple-A Buffalo and recalled RHP Chad Jenkins and INF Jonathan Diaz from Buffalo. ... Los Angeles named RHP Matt Shoemaker as its starting pitcher for Tuesday's game at Philadelphia. He takes the spot of LHP Hector Santiago, who was demoted to the bullpen last week. Shoemaker (0-1) will be recalled from Triple-A to face Phillies LHP Cliff Lee (3-3). ... The Blue Jays begin a three-game series against Cleveland on Tuesday. R.A. Dickey (3-3) faces Indians RHP Justin Masterson (2-1) in the opener.
2019 MLB playoff tracker: Who has clinched a postseason spot and who could be next?
Here's which teams at the top of the standings could punch their October tickets soon and how the playoff field looks right now.
Bichette's home run in 12th leads Blue Jays over Yanks 6-5
Bo Bichette hit his first game-ending home run, a 12th-inning drive that gave the Toronto Blue Jays a 6-5 win over the New York Yankees on Friday night.
Davis hits 2 HRs, A's top Rangers 14-9, keep wild-card lead
Khris Davis homered twice, Ramon Laureano connected on the game's fourth three-run shot to break a tie in the sixth inning and the Oakland Athletics stayed in front in the AL wild-card race with a 14-9 victory over the Texas Rangers on Friday night.
Goldschmidt help Cardinals beat Brewers 10-0
Paul Goldschmidt hit a grand slam and a three-run homer to back Adam Wainwright, who pitched six innings of two-hit ball as the St. Louis Cardinals beat the Milwaukee Brewers 10-0 on Friday night.
Laureano lifts go-ahead HR in win vs. Rangers
Ramon Laureano breaks a 7-7 tie in the 6th inning with a three-run homer down the left-field line to put the Athletics ahead for good.
Davis crushes 2 dingers
Khris Davis goes yard twice against the Rangers, hitting a solo shot in the second inning and following it up with a three-run homer in the third.