TORONTO -- In the final weeks of a frustrating season, the Los Angeles Angels are starting to have some fun.
Garrett Richards pitched 6 2/3 innings for his third straight win, Kole Calhoun hit a solo home run and the Angels beat the Toronto Blue Jays 4-3 on Thursday night to complete a three-game sweep.
"When you're having fun, winning will take care of itself," Richards said. "We're going to finish up strong and that's the only thing we can do right now."
Erick Aybar had two hits and scored twice as the Angels won for the 15th time in 20 games and improved to 12-2 in their past 14 road contests. They have won six straight series, their longest streak of the season.
"This has been a locker room full of fighters the whole year," Richards said. "We went through a lot early on and even in the middle, but we're not going to lay down for anybody. We're still going to be a team that's going to give other teams trouble."
Los Angeles remained 9½ games behind Tampa Bay for the second wild card berth with 16 games remaining.
"Obviously it's not the team that was imagined in spring training," Calhoun said, acknowledging the absence of injured slugger Albert Pujols. "But we're still out there, there is a still [some] season left to go and we're going to go out and try to win games. You never know what can happen, so we are going to out and play hard."
Calhoun went 2 for 3 with a walk to help the Angels win for the 10th time in 13 meetings with the Blue Jays. Los Angeles recorded its first sweep in Toronto since April 16-18, 2010.
The Angels, 8-4 so far in September, begin a three-game series at last-place Houston on Friday and move from there to AL West-leading Oakland for three games next week.
"It's always good when you're playing well and we're seeing a lot of good things on the field," manager Mike Scioscia said. "I don't think it's going to sugarcoat any of the issues we had during the season. I know we have a lot of work ahead of us. Right now it's just fun watching these guys go out there and put games together.
Jose Reyes homered and finished 4 for 4 with a walk, but the Blue Jays lost for the 29th time when scoring first.
Richards left after Reyes hit a two-out double in the seventh. Michael Kohn came on and walked Munenori Kawasaki on four pitches, then struck out Brett Lawrie to end the threat.
Richards (7-6) allowed three runs and nine hits, walked one and struck out four. He's 3-0 with a 2.41 ERA in three September starts.
"Through the middle innings, there's no doubt his stuff picked up," Scioscia said. "He had better command of his fastball for sure and threw some better sliders."
Moises Sierra hit a one-out double off Dane De La Rosa in the eighth but Rajai Davis struck out and Anthony Gose flied out.
Sierra posted his second straight three-hit game and has five extra-base hits in the past two games.
Reyes hit a two-out double in the ninth and Kawasaki followed with a walk, but Angels closer Ernesto Frieri struck out Lawrie on his 35th pitch to notch his 33rd save in 37 chances.
"We did a good job of minimizing some damage and getting out of some innings," Scioscia said.
Adam Lind gave the Blue Jays a lead with a two-out RBI double in the first, but the Angels answered with Grant Green's two-out RBI single in the second.
Angels infielder Erick Aybar made it 2-1 in the second when he tagged up from second base on Mark Trumbo's fly ball to center and scored when third baseman Lawrie couldn't handle an errant throw from Gose.
Reyes hit a leadoff homer in the third, his 10th, and Sierra added an RBI double to put the Blue Jays back in front, but their lead didn't last.
Calhoun tied it at 3-all with a one-out homer in the fourth, his seventh. The blast gave him at least one RBI in 15 of his past 16 starts.
The Angels chased left-hander J.A. Happ and took a 4-3 lead in the fifth when Aybar and Mike Trout hit back-to-back doubles.
"The thing that bit us the last two nights is two times last night and two times tonight we take the lead and don't get the shut down inning and give it right back," Blue Jays manager John Gibbons said. "We're not throwing out our top-notch lineup right now, we're scratching for runs, so our starters have got to step up."
Happ (4-6) lost for the fourth time in five starts, allowing four runs and six hits in 4 1-/3 innings. It's the sixth straight start in which he has failed to pitch at least six innings. He walked two and struck out six.
Reyes finished a triple shy of the cycle. ... Toronto fell to 18-25 in one-run games. ... Blue Jays slugger Edwin Encarnacion (left wrist) missed his fourth straight game but was able to hit off the tee before the game. ... Toronto OF Colby Rasmus, out since Aug. 11 with a strained muscle in his left side, hopes to return to the lineup this weekend against Baltimore. ... Trout started at DH for the Angels to give him a break from Toronto's artificial turf. ... Canadian singer Avril Lavigne attended the game.