Los Angeles (37-37) had lost its past seven opportunities to return to .500 for the first time since being 8-8 on April 15.
"That's a huge hurdle for this team," Skaggs said. "Hopefully we can keep rolling."
Skaggs (6-6) went a season-best 7 1/3 innings. He allowed a run and three hits, walked none and struck out six to win consecutive starts for the first time since beating Kansas City on April 26 and Toronto on May 2.
"Clearly his best outing of the year, possibly our best start of the year," manager Brad Ausmus said.
It was the second time this season that Skaggs didn't issue a walk. He also did it April 12 against the White Sox.
"Tonight he was just attacking the zone with all of his pitches," catcher Kevan Smith said. "He trusted all of them and you saw the results."
Luis Rengifo had two hits as the Angels remained unbeaten in five meetings with the Blue Jays this season. Los Angeles has won 17 of 23 games in Toronto.
Lourdes Gurriel Jr. homered for the Blue Jays, who have lost six straight at home for the first time since May 12-20, 2018. Toronto (26-47) is a season-worst 21 games below .500.
Skaggs retired his first 11 batters before Gurriel hit a two-out homer in the fourth. The shot was his eighth in 23 games since being recalled from Triple-A Buffalo on May 24.
Calhoun tied it with a drive off the right field foul screen to begin the fifth, his 16th. Two outs later, Goodwin connected to put the Angels in front. The homer was Goodwin's seventh.
Both homers came off right-hander Marcus Stroman (4-9), who allowed two runs and four hits in seven innings. Stroman has lost three of his past four decisions.
"He was really good," manager Charlie Montoyo said. "Just a couple mistakes today against a good lineup."
Calhoun also homered in Monday's 10-5 win for the Angels. He's gone deep three times in five games against Toronto and has 10 career homers against the Blue Jays, more than any other non-division opponent.
"That's a big change," Ausmus said. "Could be, potentially, a game-changing play."
Tim Mayza replaced Stroman after Smith reached on an infield single to begin the eighth. Mayza struck out pinch-hitter Justin Upton, and Rengifo singled before Tommy LaStella made it 3-1 with an RBI groundout.
Angels: SS Andrelton Simmons (left ankle) was scheduled to play five innings at rookie-level Orem on Tuesday, with by a seven-inning stint on tap Wednesday. ... Upton was held out of the starting lineup but hit for Goodwin in the eighth. Upton returned to the lineup Monday after being out since March because of turf toe on his left foot.
Blue Jays: 1B Justin Smoak (left quadriceps) and RHP Edwin Jackson (strained lower back) were placed on the 10-day injured list. Toronto recalled OF Billy McKinney and RHP Justin Shafer from Triple-A Buffalo. ... OF Teoscar Hernandez, who left Monday's game because of a sprained left wrist, was held out of the lineup and is day to day. Hernandez was injured when he crashed into an unpadded section of the outfield fence while trying to make a catch.
THREE OF A KIND
The Angels won for the third time this season when scoring three or fewer runs.
The Blue Jays have scored two or fewer runs in 12 of Stroman's 16 starts, and have failed to score at all in seven of his outings.
Toronto is 0-6 when the roof at Rogers Centre is open.
Angels: LHP Andrew Heaney (0-1, 4.57) is winless in four starts since being activated off the injured list. Heaney missed the first 51 games of the season because of a sore elbow.
Blue Jays: RHP Aaron Sanchez (3-8, 5.04) has lost seven straight decisions since beating Oakland on April 27. He's 1-4 with a 3.42 ERA in five career games against the Angels.
More AP MLB: https://apnews.com/MLB and https://twitter.com/AP-Sports
Atlanta Braves' Brian McCann to retire after 15-year career
McCann, 35, revealed his plans after Atlanta's 13-1 loss to St. Louis in the decisive Game 5 of its National League Division Series.
Goldschmidt can't explain 10-run 1st
Paul Goldschmidt says the Cardinals planned to get ahead of the Braves early, but no one expected a 10-run first inning.
Flaherty reflects on Cardinals' 10-run 1st inning
Jack Flaherty explains what it was like to wait and stay in the zone while the Cardinals hung 10 runs in the top of the first inning.
10-spot: Cards oust Braves from NLDS with record 1st inning
The St. Louis Cardinals scored 10 runs for the biggest opening inning in postseason history and dealt the Atlanta Braves another playoff heartbreak with a 13-1 rout in decisive Game 5 of the NL Division Series on Wednesday.
Flaherty shuts down Braves in decisive Game 5
Jack Flaherty allows one run over six innings pitched with eight strikeouts in the Cardinals' series-clinching victory over the Braves.
Cardinals advance to NLCS behind historic 10-run 1st inning
The Cardinals set a postseason record with 10 runs in the 1st inning, the most by any team in the opening frame as they cruise past the Braves and advance to the NLCS.