Bosh scored 14 of his season-high 32 points in the fourth quarter and the Heat (7-6) beat their intrastate rivals for the 10th straight time.
"I'm not really used to guarding players like him," said Magic center Nik Vucevic. "Usually I'm around the paint, trying to help, but with him you can't do that. With Bosh, you have to be really close, and if you help he gets those open shots. He got it going with some open shots and at the end he was unstoppable."
Bosh hit 5-of-6 shots in the fourth quarter, including a couple of 3-pointers. His two free throws with 6:45 left broke a 77-77 tie and started a 14-4 run that put Miami firmly in charge.
A long jumper by Bosh gave Miami its first double-digit lead at 91-81 with 3:39 left.
"I knew how they were playing, and I just wanted to keep switching up on them and not give them the same look," Bosh said. "That's when I started popping and getting some open looks. I was able to build a rhythm on that."
Vucevic led Orlando with 33 points and 17 rebounds, leading the Magic (6-9) to a 44-33 rebounding advantage. Miami offset that with 52 percent shooting, including 12 of 26 from 3-point range. Bosh also had a team-high 10 rebounds.
Mario Chalmers contributed a season-high 24 points and eight assists for the Heat, who shot 52 percent overall. Rookie Shabazz Napier added 12 points for Miami in 28 minutes off the bench.
Victor Oladipo scored 14 points for the Magic, and rookie Elfrid Payton came off the bench with nine points, four assists and five steals.
Willie Green, a major contributor to the Magic's comeback from a 23-point deficit to win at Charlotte on Friday night, went scoreless in 31 minutes in his first start for Orlando.
Payton sparked a Magic's rally late in the third quarter with a steal, a layup and a floating four-foot jumper, which quickly erasing an eight-point Miami lead. Channing Frye's two free throws with 9:34 left in the game gave Orlando its biggest lead at 73-70.
Bosh answered with an 18-foot jumper and a 3-pointer, and the Heat (7-6) never trailed again.
"They cut the lead pretty fast," Bosh said. "It's going to be like that some nights and I have to take it on myself to shoot some good shots and get us going."
It was the 100th regular-season meeting of Florida's NBA teams. The Heat have won 56.
The Magic's last win against the Heat came on March 12, 2012.
Dwyane Wade (strained left hamstring) and Norris Cole (dislocated left middle finger) did not play for Miami. Wade has missed five straight games. . . Tobias Harris, Orlando's leading scorer, sat out the game with a strained right calf. . . . The Magic, already leading the NBA with nine road games, will play nine of the next 11 on the road.
WHERE'D THAT GO?
The Magic's .416 three-point percentage was leading the NBA before Wednesday night's game against the Los Angeles Clippers. In three games since then they are 15 for 56 (.268) including Saturday night's 3 for 16.
Heat: Sunday night vs. Charlotte.
Magic: Monday night at Cleveland.