A key strikeout of Nelson Cruz in the fourth inning turned things around, and the Blue Jays left-hander went on to earn his seventh straight win.
Happ began the fourth with a walk and a hit batsman before falling behind 2-0 to Cruz, who had racked up seven RBIs on a grand slam and three-run homer the previous day.
Two straight four-seam fastballs evened the count 2-2, another four-seamer got Cruz swinging on 3-2 count, and Happ followed that with a second strikeout and pop up to end the inning.
"That’s kind of my best pitch so I tried to use that and get ahead with that," Happ said of the pivotal at-bat. "When you’re not hitting on your other stuff you have to rely on that. … I was just trying to really locate there and mix it up with the change-up and I think that helped."
Happ (13-3) notched a career-high in wins while walking four and striking out six through six innings of one-hit ball as the Blue Jays avoided a three-game sweep.
He started the game with a 12-pitch first inning but started to show some trouble with command over the next three, walking the lead-off batter in each of the second, third and fourth innings before hitting Robinson Cano to set up the crucial Cruz at-bat.
"A couple big strikeouts and I think that set the tone, especially for him," said Josh Thole, who started his third straight game behind the plate in place of an injured Russell Martin. "I know his pitch count got up a little but that was the inning that got him right where he needed to be."
Edwin Encarnacion hit his 224th home run in a Blue Jays uniform in the fourth inning to pass Vernon Wells for third place on the franchise’s all-time list and Thole scored the other run for Toronto (55-44) on a double play in the sixth.
The dominant pitching performance was needed following a 14-5 loss to Seattle on Saturday that saw the bullpen surrender eight runs.
"It makes it easy on me," Thole said. "We were in a really good rhythm the whole game. Up and down, the guys came in with a game plan ready to go and it was a big win, especially after yesterday."
"You look at what happened yesterday, that’s the beauty of baseball," added manager John Gibbons. "You can turn around and throw a one-hit shutout."
Wade Miley (6-8) allowed two runs on four hits and two walks while striking out four through six innings to shoulder the loss for the Mariners (50-48), who had won the first two games of the three-game weekend series at Rogers Centre.
"I felt like I wasn’t quite as sharp as in my last outing but I was able to make some pitches and get out of most of the jams," Miley said.
Thole led off the sixth inning with a double and advanced to third on a fielder’s choice, sliding under the tag of Mariners third baseman Kyle Seager. Seattle challenged the umpire’s safe call and it was upheld after a one minute 24 second review.
Thole later scored from third to give Toronto a 2-0 lead when Josh Donaldson hit into a double play.
Darwin Barney made a nice defensive play at third base in the eighth, diving and snagging a line drive to rob Norichika Aoki of a double.
"I can’t say enough good things about him," Gibbons said of Barney. "That diving catch can go unnoticed but who knows what happens after that? The guy gets a double and who knows."
NOTES: Attendance was 47,488. … Encarnacion has 27 home runs and leads the majors with 87 RBIs. … Carlos Delgado tops the Blue Jays home run leaderboard with 336, Jose Bautista is second at 255. … Toronto designated reliever Drew Storen for assignment before the game and recalled reliever Ryan Tepera. … The Blue Jays continue their nine-game home stand with a three-game interleague series against San Diego starting Monday night. … Bautista is expected to join the team for Monday’s game. He’s been on the disabled list with turf toe since June 17.