"It was kind of interesting but it got done," Lackey said.
Casey Kotchman doubled home Torii Hunter with the go-ahead run in the third inning, and the Angels snapped a four-game road losing streak in a ballpark where they have struggled in recent years. Los Angeles, loser of 14 of 16 in Toronto coming in, improved to 19-38 at Rogers Centre since 1996.
"We were fortunate in some spots," Angels manager Mike Scioscia said. "They hit a couple of balls hard right at guys that we turned double plays on late in the game. Our defense turned the double plays that we had to and we pitched well enough to hold on."
Making his second start of the year after returning from a strained triceps, Lackey (1-0) gave up a leadoff homer to Toronto's Brad Wilkerson in the first, then blanked the Blue Jays the rest of the way.
"I felt pretty good," Lackey said. "I found my fastball location and, from the second inning on, I started locating better and was still able to throw the breaking ball for a strike when I needed to."
Two singles and a walk helped Toronto load the bases in the eighth, but Shields escaped by striking out Matt Stairs on three pitches and getting Shannon Stewart to ground into a double play.
Rodriguez loaded the bases with three straight walks in the ninth, but held on to record his major-league leading 18th save.
"I was trying to do too much, trying to be too fine and I lost a little control right there," Rodriguez said.
With one out, Rodriguez walked Gregg Zaun, Marco Scutaro and Brad Wilkerson. Aaron Hill popped out and Rodriguez fell behind Alex Rios 3-0 before catching him looking at a fastball to end it.
"I don't know if it's getting used to a new mound or what, but he was a little out of synch to say the least," Scioscia said. "He did enough to get it done. He came back real strong on Rios from being down 3-0. It certainly wasn't pretty but Frankie has a knack of getting back into synch and making some pitches."
Rios, batting .165 with 23 strikeouts in his past 79 at bats, admitted he had been fooled.
"I thought he was going to go away for some reason and he didn't," Rios said. "I got caught up on that pitch."
Lackey allowed one run on seven hits, walked three and struck out a season-high six. He has gone 12-2 with a 2.46 ERA in his past 14 road starts.
"John was terrific," Scioscia said. "He backed up his last start with another great effort."
Lackey's only jam came in the second, when two straight singles and a walk loaded the bases for Hill, who ended the inning by flying out to center.
Lackey won a career-high 19 games last season, and his successful return gives the Angels a big boost.
"It's huge," catcher Mike Napoli said. "He's our top dog and we need him. It's good to see."
Los Angeles loaded the bases in the first and second against Toronto right-hander Dustin McGowan (2-4), but the only run came when Garret Anderson grounded into a double play in the first.
Kotchman was thrown out at the plate on a bases-loaded fielder's choice by Macier Izturis in the second before Gary Matthews stranded three runners by flying out to center.
Los Angeles broke a 1-all tie in the third when Hunter doubled over the head of Rios in center and scored when Kotchman doubled down the left field line.
Matthews chased McGowan with a one-out triple in the seventh and scored on Vladimir Guerrero's sacrifice fly.
McGowan allowed three runs-two earned-on five hits in 6 1-3 innings. McGowan, who has won just once in his past six starts, walked four-one intentional- and struck out four.
The Angels lost shortstop Erick Aybar in the first when he dislocated his right pinky while fielding a ground ball. X-rays on Aybar's hand were negative, but he will visit a specialist on Wednesday to determine the extent of the damage.
Asked whether Aybar might land on the disabled list, Scioscia acknowledged that it was "certainly a possibility."
Aybar was injured when dove to his left to snare Rios' grounder, catching his finger as he spun around to make the throw to first. He came up clutching his pinky and wincing in pain.
Robb Quinlan came on to play third base and Izturis moved from third to shortstop.
Napoli reached base all four times. He drew three walks-two intenional-and was hit by a pitch in the sixth.
Notes: Angels INF Chone Figgins (hamstring) worked out before the game and could be activated Wednesday. ... Los Angeles INF Howie Kendrick (left hamstring) took batting practice Tuesday but has not been cleared to resume running. ... Former NHL star Doug Gilmour threw out the first pitch.