LeBron James had 30 points, nine rebounds and six assists for Cleveland. Delonte West had 16 points, and Sasha Pavlovic added 14.
Orlando was 1-for-9 from the field to open the game and didn't get much better through three quarters.
The Magic finished 34 of 86 (39.5 percent), compared with 35 of 80 shooting (43.8 percent) for Cleveland. Orlando even got beat on fastbreak points (22-3) and points in the paint (46-34).
But the Magic made their mark from long range, including five 3-pointers in a four-minute stretch of the third quarter.
Orlando was 14-for-32 on 3-pointers, compared with 6-for-19 for the Cavaliers, and the Magic got 20 points off 15 Cavaliers turnovers in their fifth consecutive win.
Orlando's Hedo Turkoglu had 18 points and seven rebounds, while Maurice Evans added 10 points. Jameer Nelson had seven assists but only six points on 2-for-12 shooting.
Cleveland led 45-40 at halftime and by as many as 10 in the third quarter before Orlando made a run. Evans, Turkoglu and Lewis each hit consecutive 3-pointers, and Nelson capped it with a three-point play to give the Magic a 73-72 lead at the end of the third quarter.
James nearly kept the Cavaliers in the game by himself in the fourth, scoring seven of their first nine points. Four of them were on seemingly effortless dunks.
But Cleveland went more than four minutes without a bucket, missing three free throws in a row (one from James and two from Zydrunas Ilgauskas).
Tiger Woods watched from courtside, a day after winning the Arnold Palmer Invitational at nearby Bay Hill. He saw Nelson hit an unlikely 3 with 2:30 remaining. The ball rimmed out, then hit the backboard and went in.