SALT LAKE CITY -- Al Jefferson scored 23 points, Gordon Hayward added 22 - including a jumper with 40 seconds remaining - and the Utah Jazz held on to beat the Miami Heat 104-97 on Monday night.
The Heat were down 21 points in the third quarter but fought back to pull within two behind a 32-point effort by LeBron James. However, James was called for goaltending and an offensive foul on back-to-back possessions late, then missed a 3-pointer with Miami down six with 2:19 left.
Hayward's fadeaway 14-footer gave Utah the cushion it needed.
The Jazz were shooting 67.6 percent at halftime but made only 4 of 19 in the fourth to let the Heat back into the game.
Utah held a 40-23 advantage on the boards, and 47-26 edge in bench scoring.
Chris Bosh added 16 points for Miami and reserve Rashard Lewis had 13.
Miami started strong and led 16-8 only to be outscored 37-13 over the next 11 1/2 minutes.
The Jazz turned the game with strong play from their reserves, solid defense, hot shooting and second effort.
DeMarre Carroll come off the bench to score seven points in four minutes and Jefferson hit 5 of 8 shots to give the Jazz a 30-25 lead after the first quarter.
Utah opened the second on a 15-4 run to bump its lead to 45-29. The Jazz hit 12 of 15 shots (3 of 4 from beyond the arc) in the quarter (80 percent) and took a 59-44 lead into the break.
Hayward scored 12 points on 5-of-6 shooting in the second quarter, helping the Jazz stretch their lead to 17.
Utah's bench dominated, outscoring Miami 33-5 in the first half.
The Heat shot 50 percent in the opening two quarters, but couldn't match the 67.6 percent the Jazz were shooting (25 of 37) or their 3-point effort (5 of 7).
James was looking to become the youngest player to hit 20,000 points in his career. He was 50 shy entering the game, and once scored 51 against the Jazz when he went over the 5,000-point mark.
He hit his first three shots and had 11 points after the first quarter. James had 20 at halftime on 8-of-11 shooting but clearly was frustrated as Miami struggled with Utah's size, aggressiveness and hot shooting.
He slapped his hands as if to say "let's go" after he scored a short jumper that pulled the Heat within 48-33. His dunk after an ugly missed dunk got Miami within 56-42. But Jamaal Tinsley, starting in place of point guard Mo Williams, countered with Utah's fifth 3-pointer of the half.
Jefferson proved a big difference. In the first meeting in December, a Jazz loss, he had just six points. He had 10 after the first quarter and finished 8 of 14, with 11 rebounds.
Utah also finished with a 19-0 edge in second-chance points against a Jazz team looking for a quality win.
NOTES: Ray Allen entered the game eight points shy from tying Robert Parish (23,334) for 21st on the NBA's all-time scoring list. He finished with 10.