Chris Bosh had 29 points and 12 rebounds, Andrea Bargnani had 24 points and 10 boards and the Raptors beat the Heat 120-113. It was the second straight game that Bosh and Bargnani each had a double-double, after doing it in Wednesday's 104-91 loss at Utah.
"One thing I wanted to challenge Andrea to do this year, and challenge myself, was rebounding the basketball," Bosh said. "We did a good job."
Dwyane Wade shook off a recent slump to score 30 points for the Heat, who have lost three straight and four of five after opening the season 6-1.
"One thing you learn in this league is you don't get too high, you don't get too low," Wade said. "When we were 6-1, if you'd asked me I'd say we've got to continue to get better. Now we're 7-5 and we've got to continue to get better."
Mario Chalmers added a career-high 30 points, Michael Beasley had 21 points and 12 rebounds, and former Raptors star Jermaine O'Neal finished with 17 for the Heat.
Toronto looked to be in command of this one after scoring 43 points and shooting 19 of 24 in the second quarter to lead by 20 at the half. Miami battled back and twice cut it to one in the fourth, but was never able to take the lead.
"I think we were slacking in the first half a little bit," Chalmers said. "We took a while to get into the flow of the game. Once we did, it was a little bit too late."
O'Neal's two free throws made it 102-101 with 3:27 left, but Toronto responded with a 13-2 run. Bargnani started it with a 3-pointer and, after Beasley hit a jumper, Turkoglu made two free throws and Jack followed a Miami shot clock violation with a 3-pointer. Bosh responded to a Wade miss with a turnaround jumper and Jack hit another 3 to make it 115-103.
"We held our ground," Bosh said. "They cut it very close but we kept fighting, we kept scratching and we got the stops when it counted."
Wade was held to a season-low 15 in Wednesday's 105-90 defeat at Atlanta, ending a streak of 23 straight regular-season games with at least 20 points. He was better in this one, making 10 of 24 shots and finishing with five rebounds and eight assists.
Wade scored 12 points in the first, making an acrobatic layup and a reverse slam dunk, but Bosh had nine points and the Raptors led 26-24.
Toronto rookie DeMar DeRozan had the basket of the quarter, rising over Jones to throw down an alley-oop pass from Calderon, then finishing the three-point play at the foul line.
Bargnani had nine and Bosh had eight in Toronto's big second, with Turkoglu adding a buzzer-beating 3-pointer that gave the Raptors their biggest first half of the season and a 69-49 edge at intermission.
Heat coach Erik Spoelstra called the second quarter "horrendous."
"To just let out the floodgates and allow them 69 points in the first half, that is not our game," Spoelstra said. "We have to take notice and take it to heart. ... We've worked too hard and fought too hard for this identity to just surrender it this quickly."
Wade said Toronto's offense ranks among the league's best.
"They're like the Phoenixes, the Orlando Magics, the teams like that, those high-powered offensive teams that are very tough to defend," Wade said.
The Heat chipped away in the third, cutting it to 87-79 on back-to-back baskets by Beasley, then making it 89-83 on a jumper by Wade. Shavlik Randolph missed a shot as the quarter ended.
Miami played without Quentin Richardson, who left Wednesday's game with a sore back. Jones started in place of Udonis Haslem, who missed his second straight with a sore left shoulder.
"They both wanted to [play]," Spoelstra said before the game. "In fact, Udonis went through the walkthrough today but he's not 100 percent. There's still pain in his shoulder when it's up."
Both could return in Miami's next game, Sunday against New Orleans.
Toronto's Antoine Wright (left ankle) sat for the third time in four games. ... Raptors F Reggie Evans (sprained left foot) has not played since the preseason and remains sidelined indefinitely. ... Jack scored 12 of his 17 in the fourth. ... The Raptors made a season-high 20 turnovers. ... Toronto's bench outscored Miami's 36-10.