"For me, it's a challenge going against a team like this and an opposing pitcher like that. I look forward to it," Halladay said. "It was a special game for us."
The Blue Jays won their fourth straight following a five-game skid and sent New York (9-14) to its third consecutive loss.
The Yankees have managed just two runs since Tuesday and are five games under .500 for only the second time in manager Joe Torre's tenure -- they were 5-10 after losing to Milwaukee on April 17, 1997.
"Halladay was outstanding. I don't care how we've been swinging the bats. He was better than us today," Derek Jeter said. "He's nasty, that's just the bottom line. He's as good as they come."
With six Cy Young Awards between them, five for Johnson, the marquee matchup lived up to its billing.
Using a sharp curveball, Halladay (4-1) walked one in his seventh career shutout and 17th complete game, second this season.
Johnson (2-2) allowed seven hits in his 93rd complete game, first this year. He struck out nine and walked three in a game that lasted just 2 hours, 8 minutes.
"That was a classic pitching duel," Torre said. "We're not hitting, but you can't diminish what that kid did tonight. He was dynamite. He was in complete control of the game."
Gregg Zaun drew a one-out walk from Johnson in the seventh inning, and Hinske -- the lone left-handed hitter in Toronto's lineup -- pulled an 0-2 pitch over the right field fence for the only runs of the game.
"Obviously, that one mistake cost us the ballgame," Johnson said. "When I go out there I want to be perfect."
Hinske pumped his arm and did a little leap as he rounded first, well aware that two runs would probably be enough to win the way Halladay was pitching.
"I knew when that went out of the park, that was a big hit," Hinske said.
Coming into the game, lefties were just 4-for-24 (.167) against Johnson with zero home runs.
"He left it a bit over the plate and I kind of ran into it, got it up in the air a little bit," Hinske said. "Randy Johnson, left on left, something I can tell my grandkids about."
Halladay retired 10 in a row before Jorge Posada's two-out double in the seventh, but Tino Martinez grounded out to end the inning. The 2003 AL Cy Young Award winner then set down his last six batters to end it.
"Usually there's a drop-off after the sixth or seventh, but he seemed to get stronger," New York slugger Alex Rodriguez said. "He had the kind of stuff that even if the lineup is rolling, he can shut you down. And that's what a great pitcher does."
Both starters were helped by dazzling defense.
Hudson turned in a pair of nice plays himself at second base, and shortstop John McDonald made a leaping grab of Williams' liner in the fifth.
Johnson pumped his fist after escaping a first-and-third jam in the fifth, when Frank Menechino bounced into an inning-ending double play. And the Big Unit reached behind his back to snare Shea Hillenbrand's one-hopper in the sixth, bringing a roar from the crowd of 40,839.
But the Yankees set a season low for hits and fell to 0-10 when scoring three runs or fewer.
"They know how to hit, it's just a matter of when it's going to happen," Torre said. "There's nothing that you'd want to change except the results."
It was Halladay's first shutout since April 15, 2004, in Detroit. ... The Yankees are 6-9 at home, including 2-5 on this nine-game homestand. ... Halladay improved to 8-4 lifetime against the Yankees. ... Johnson dropped to 13-5 against Toronto. It was his first complete game since Aug. 25, 2004, with Arizona in Pittsburgh. ... Posada's double snapped an 0-for-14 slump. ... Yankees closer Mariano Rivera missed the game because of a stomach virus. ... The Blue Jays (13-11) matched their longest winning streak of the season.