"I knew I was going to have to pitch well against Halladay," Lackey, a man of few words, said. "Didn't get it done. Didn't execute a few pitches."
Despite the unhappy ending, the Angels maintained their five-game lead in the AL West over the A's, who lost to the White Sox.
Facing Ryan in the ninth, Garret Anderson walked and Gary Matthews Jr. singled. Howie Kendrick's RBI single to right was followed by a double-play grounder by Mike Napoli, cashing in the second run. Chone Figgins' third hit of the night, a double, brought hope, but Casey Kotchman fly ball to deep right-center fell short, along with the rally.
Halladay, moving to 10-6, held the Angels to a two-run homer by Vladimir Guerrero across seven strong innings.
The Jays jumped on Lackey (6-2) for three runs in the third inning, two coming on a single by Alex Rios and another on a miscue by third baseman Figgins, just his second error of the year in 52 games.
Guerrero shaved the deficit to a run in the fourth when he followed Kotchman's single with a blast to dead center. The homer was No. 14 of the season for Guerrero, who extended his club-high RBI total to 47 when he stroked a two-out double in the eighth against reliever Scott Downs. This cashed in Figgins, who'd singled leading off.
Guerrero went down to nail his homer, lifting a pitch below his knees over the wall in center at the 400 marker.
"He's got that knack of hitting pitches like that," Halladay said. "He's obviously a different type of hitter -- and he can hurt you almost at any time."
Vernon Wells quickly matched Guerrero's homer with a two-run shot in the fifth.
Lackey went with a two-strike slider, a pitch he doesn't throw nearly as often as his curveball, and Wells crushed it.
"If I executed it better, it could have worked," Lackey said of the slider that stayed up in the hitting zone. "If I'd have thrown a good one and he'd hit it, then I would second-guess the selection. The location was bad."
Lackey had quality stuff, striking out seven in his six innings.
"At times, he made some good pitches to get out of innings," Angels manager Mike Scioscia said. "Vernon Wells, you make a mistake, he's the type of hitter who can drive a ball. John couldn't put him away with a breaking pitch.
"John wasn't as good as we've seen him, but he pitched better than his line score showed."
The Jays added a run against Lackey in the sixth when Lyle Overbay doubled and scored on Adam Lind's fielder's choice grounder. Rios manufactured a run in the seventh against Justin Speier with a single, two steals and a throwing error by Napoli, the catcher.
Five of the Angels' 11 hits came after Halladay departed. Kotchman, Guerrero and Kendrick each had two hits in support of Figgins, who came alive with a double and two singles after coming into the game with just two hits in his previous 16 at-bats.
The Angels' four-game stretch of scoring at least five runs is their longest such run since Aug. 27-Sept. 3, 2007, when they produced at least five runs in seven consecutive games.
The line score wasn't kind to the Angels' defense, identifying four errors by the team that came into the game tied for second in the AL in fielding percentage, at .986.
Three errors, Scioscia pointed out, were born of aggression -- Matthews, charging a liner by Rios in the second and having it bounce past him; Figgins, charging Wells' grounder in hopes of a double play and Napoli, rushing his throw into left on Rios' steal of third in the seventh inning. The fourth was charged to Kotchman for not reaching first in time on a grounder into the hole by Brad Wilkerson after Wells' homer.
"You're going to have some rough patches," Scioscia said. "Our defense is going to be a positive for us. All in all, we play great defense. Tonight a couple of plays didn't get made that usually are. That's part of the game."
Lackey and Halladay, two of the game's premier right-handers, had entered the game sharing the AL lead for ERA since 2005 at 3.15 among pitchers with at least 400 innings. The Angels' Kelvim Escobar, trying to recover from shoulder inflammation, is fourth on the list at 3.44.
Lackey, who walked one and struck out seven in six innings, watched his ERA rise from 1.44 to 1.93.
Jon Garland, bidding for his 100th career win, will try to claim the series rubber match on Sunday when he faces right-hander Jesse Litsch.