The victory extended Miami's winning streak to six, and avenged a 116-114 overtime loss to Utah at home on Nov. 9. The Heat improved to 15-8, while Utah fell to 16-7.
Al Jefferson scored 25 points and all five Jazz starters were in double figures by the start of the fourth. But it wasn't enough as the Heat pulled away with a 12-3 run to start the quarter.
Miami led by as many as 12, but the Heat found themselves trailing 78-77 entering the fourth after the Jazz mounted yet another rally. Last month, they came back from a 22-point deficit to beat the Heat.
In that game, Paul Millsap scored a career-high 46 for Utah. This time, he got going late and finished with 18 points on 9-of-12 shooting. Deron Williams had 21 for Utah but only four in the first half.
The loss continued an up-and-down season for the Jazz, who were riding a seven-game winning streak last week but lost Friday to Dallas.
Against the Heat, Millsap tried to spark the Jazz again. He grabbed the rebound off James Jones' miss and raced the length of the court for a layup at the buzzer to pull the Jazz within 28-27 to end the first quarter.
The Heat led by as many as 10 again in the second as Wade scored eight points in a 3-minute span, and James' driving layup with 4:27 left made it 49-39.
A three-point play by Andrei Kirilenko pulled the Jazz to 66-64 with 6:18 left in the third. Williams then passed underneath to Kirilenko for a dunk to tie it at 72 with 4:14 left, and Raja Bell put Utah ahead with a pair of free throws.
But the fourth quarter was all Miami, as the Heat outscored the Jazz 34-20.
Utah had held its last 10 opponents under 100 points, and the Jazz were 10-0 when entering the fourth with a lead.
NOTES: Utah C Kyrylo Fesenko did not dress because of a sprained left ankle. ... Williams didn't attempt his first shot until there was 8:32 left in the second quarter.