TORONTO -- After a brush with perfection in his previous start, Andy Pettitte had to battle in this one. He still came out a winner.
The AL East leaders, who had a seven-game winning streak snapped Friday, have won 15 of 19 on the road.
"It was a real important game for us to win because you don't want losing streaks to become two," manager Joe Girardi said. "You want to stop it after one and get on another roll. We have a chance to win the series tomorrow and that's what you want to do."
Pettitte is 5-2 following a Yankees loss this season and 81-42 in such situations during his New York career.
Toronto dropped to 4-11 against the Yankees this year and has lost 18 of 24 overall.
Pettitte (13-6), who took a perfect game into the seventh inning in his previous outing against Baltimore, extended his unbeaten streak to eight starts despite not making it past the sixth inning in this one. The lefty allowed four runs and four hits, walked five and struck out three.
"I actually felt pretty good to start the game off but just got out of rhythm and really just struggled," Pettitte said. "It was a struggle all day. I wasn't locating my fastball to either side of the plate and I was having trouble getting my breaking ball over."
Girardi praised Pettitte for "keeping the damage to a minimum."
"The walks hurt him today," Girardi said. "He hasn't walked a lot of people lately and today they kind of bit him."
All-Star closer Mariano Rivera threw a bullpen session before the game and reported no pain in his sore left groin, meaning he might be able to return to the mound Sunday.
"It's not very often you get to save games on the Yankees if your name's not Mariano," Hughes said. "It's been nice. I think we have the depth and the arms in the bullpen to pick up the slack if he needs a break."
Derek Jeter returned to the lineup after a day off and got two hits, leaving him seven shy of breaking the Yankees record held by Lou Gehrig (2,721).
Cano hit a leadoff homer to right in the fourth, his 23rd, and Teixeira led off the fifth with a shot to left, his team-leading 33rd.
Both homers came off rookie left-hander Brett Cecil (6-4), who allowed three runs and seven hits in 4 2/3 innings while losing for the third time in four starts.
Pettitte retired his first 20 batters Monday night at Baltimore before an error by third baseman Jerry Hairston Jr. ended his bid for perfection. Pettitte gave up a single to his next batter, Nick Markakis.
This time, Pettitte walked leadoff hitter Marco Scutaro to begin the first inning.
Third base umpire Jeff Nelson ruled it a home run but, after Ruiz circled the bases, the umpires huddled near third base before three jogged off the field and under the first-base stands to watch a replay, the first video review at Rogers Centre.
After about five minutes, they emerged and waved Ruiz back into the batter's box. Television replays indicated that the ball was indeed foul.
"I had the best look at it," said Hairston, who was playing left. "It was a tough call. It was really, really close. I saw it hit a fan in foul territory. That's why I was kind of adamant."
Ruiz ended up grounding out but homered to left-center in his next at-bat.
Pettitte walked the next two batters before John McDonald dropped a single into short right that rolled past a charging Eric Hinske, scoring Edwin Encarnacion. Cano retrieved the ball and fired it to the plate in time to nail Jose Bautista, who was trying to score from first. Bautista appeared to slide home ahead of the tag from catcher Jorge Posada but was called out by plate umpire Tim Tschida.
"It was a lot closer than I thought it was going to be," Pettitte said. "I thought he was going to be out by a mile."