Amir Johnson made two free throws with 2.7 seconds left, Andrea Bargnani scored 29 points and the Toronto Raptors snapped an eight-game losing streak to the Celtics with a 102-101 victory Sunday.
Paul Pierce's shot bounced off the rim as the buzzer sounded, giving Toronto its first victory against Boston since a 114-112 road win on Jan. 23, 2008.
Boston, which lost 89-84 at home to Oklahoma City on Friday, suffered consecutive defeats for the first time this season.
"We can't just show up. We've got to play some D," a frustrated Kevin Garnett said. "These teams we're playing against are very high-caliber offense teams. We know what they are. On paper they might not be whatever but as far as talent, this league has a lot of talent and you've got to respect that."
Johnson had 17 points and 11 rebounds, Sonny Weems scored 16, Leandro Barbosa had 12 and Jose Calderon 11 for the Raptors, who have won a season-high three straight. Reggie Evans finished with 16 rebounds and a season-high nine points.
Toronto made 30 of 39 free-throw attempts.
Nate Robinson led Boston with a season-high 22 points, Pierce and Ray Allen each had 19 and Garnett and Glenn Davis both scored 12.
Pierce said Boston lacked the proper focus in the losses against the Thunder and Raptors.
"I know we're a better team than those two teams, I know we are," he said. "It's just mentally coming out and having the right mindset. I don't think we have the right mindset coming into these games against opponents that we're supposed to beat."
Toronto had won just one of its previous 12 against Boston, including six straight losses at home, but turned this one around with a 38-point second quarter, the biggest output by a Celtics opponent in any quarter this season.
"We may be the worst second quarter team in all of basketball," Pierce said. "We come out, get these leads and then we give them right away in the second quarter. We've got to do a better job and be more consistent throughout the game, quarter by quarter."
The Raptors led 82-75 to begin the fourth and extended their lead to 93-81 on a 3-pointer by Barbosa with just over 9 minutes left.
Toronto went cold after that, missing its next 10 field goal attempts and allowing Boston to storm into the lead with a 17-1 run over the next 5 1/2 minutes. Allen tied it at 94 with a 3-pointer from the wing with 3:39 remaining, then made another 3 from almost the same spot on Boston's next possession.
Johnson ended Toronto's slump by making a hook shot with 2:46 to play, cutting it to 98-96. After Pierce made one of two from the line and Barbosa hit a jumper, Weems had a chance to put the Raptors ahead, but airballed his 3-point shot with 42 seconds left and Toronto trailing by one.
Evans fouled Davis on a drive to the basket with 21 seconds to go and the Celtics' big man made both, putting Boston up 101-98.
After Weems made a driving layup, Allen lost the ball at midcourt and Toronto recovered.
"I thought Ray got fouled," Celtics coach Doc Rivers said. "It's clear. But listen, you know they're going to swipe and you know they're going to after the ball and you've got to protect the ball."
Pierce was whistled for a foul on Johnson, who made both to give the Raptors a 102-101 lead. Rivers didn't like that call either, but refused to criticize the officials when asked whether he thought it should have been a shooting foul.
"You answer that," Rivers said. "I need my money, I have four kids. I'll let you answer that. I didn't see anything."
After a timeout, Allen inbounded to Pierce, who drove past DeMar DeRozan on the left wing but couldn't get his jump shot to fall.
"I thought I got a great look there for the last shot but it shouldn't even have come down to it," Pierce said.
Boston's Rajon Rondo, who left Friday's game with a strained left hamstring, was held out of the lineup. His replacement was Robinson, who made an immediate impact by scoring 16 points in the first quarter, including three 3-pointers, as the Celtics built a 31-23 lead.
Bargnani responded with 15 points in the second and Johnson added seven as the Raptors attacked the basket and got to the line. Toronto made 12 of 16 from the free throw line and carried a 61-58 lead into the break.
Boston's Shaquille O'Neal fouled out with 7:32 remaining. He had eight points and five rebounds in 20 minutes.
Barbosa returned to the lineup after missing six games with a strained left shoulder. … Jerryd Bayless and Peja Stojakovic, acquired by Toronto in Saturday's five-player deal with New Orleans, are expected to debut in Wednesday's home game against Philadelphia. … The Raptors will assign forward Ed Davis to Erie of the D-League on Monday. Toronto's first-round draft pick last June, Davis has not played this season after injuring his right knee shortly before training camp.