The Big Three accounted for 67 of the team's 95 points as Dwyane Wade scored 25 points and Chris Bosh added 12 points and eight boards for the Heat, who have won two straight and seven of their last eight.
"We knew it was going to be one of those grind-out kind of games." Wade said. "We understand that a lot of teams do that when they play the Heat - come out on fire."
Mario Chalmers knocked down back-to-back treys and James added a tough fadeaway jumper at the backend of an 18-3 run for the Heat, who began to pull away leading 73-57 with 3:27 to go in the third.
The Heat finished the quarter with a 75-62 lead going into the final quarter.
The Raptors, however, got back-to-back three-pointers from Kleiza and then Bayless to cut the Heat lead to 85-80 with 4:03 to go in the contest.
Toronto got as close as three with 2 1/2 minutes to go, but the Heat went 6-of-8 from the charity stripe down the stretch to keep the visiting Raptors at bay.
Raptors coach Dwane Casey found some positives in the team's loss saying, "I liked our disposition, I liked the way we approached it. I liked the way we competed."
"It just shows that we can compete with anybody," DeRozan added.
Two James' free throws capped a 10-2 run for the Heat as they finished the opening quarter 11-of-16 from the field to take a 31-27 lead heading into the second stanza.
DeRozan led the way with 16 first-half points for the Raptors, who trailed 53-48 at the break.
Toronto heads to Washington for the second game of a back-to-back on Monday while the Heat host James' former team, the Cleveland Cavaliers, on Tuesday...Toronto's DeRozan tied Vince Carter for the third-longest streak of consecutive starts for the Raptors. DeRozan has started 107 straight games dating back to the start of last season. Carter started 107 games from 1998-2001...Miami is now 11-2 at home.