"To be able to get some stops like that at the end, and then execute, it's something that's critical in this series," Heat coach Erik Spoelstra said.
Dwyane Wade had 14 and Ray Allen scored 13 for the Heat, who tied a franchise record with their eighth straight playoff victory. They'll go for No. 9 on Saturday night, when the best-of-seven series shifts to Brooklyn for Game 3.
Mirza Teletovic set a Nets playoff record with six 3-pointers, on his way to a 20-point night off the bench. Shaun Livingston scored 15, and Paul Pierce and Joe Johnson each added 13 more for the Nets.
Deron Williams was 0 for 9 from the field, the worst shooting night of his career.
"That one hurt," Nets coach Jason Kidd said. "We were right there. We gave ourselves, on the road, an opportunity against the world champs. We let the game slip away. That one possession when they got four offensive rebounds, it didn't lose the game for us."
It was three rebounds, but no matter. It was still a backbreaker for the Nets.
Teletovic scored inside with 3:39 left to get Brooklyn within eight. For the next 100 seconds, Miami kept possession.
James missed a 3-pointer, and Allen maneuvered his way around four Nets to grab the rebound. James missed again, and Wade grabbed that board. James missed a layup, but Bosh controlled that board.
And finally, almost mercifully, Wade found James for a layup with 1:59 remaining. The lead was 10, the outcome decided.
"That was a killer," Johnson said.
Wade had just six points in the game's first 37 minutes, then eight more in the next three, setting the tone for a grind-it-out fourth quarter from Miami.
The Heat led 79-77 when Brooklyn's Marcus Thornton missed a 3-pointer with 6:21 left which, had it gone down, would have had the Heat facing a fourth-quarter deficit for the first time in these playoffs.
But it missed. And that's when the Heat found separation for the first time all night.
James was in trouble with less than 4 seconds on the shot clock and still found a way to get a bounce pass out to Mario Chalmers in the left corner for a 3-pointer. After a stop on the ensuing Brooklyn trip, Allen hit from the same spot as Chalmers for an 85-77 lead.
"As the game wore on we started picking up the pace," Allen said. "We started to getting how we play basketball."
Teletovic kept the Nets afloat. He made his first four 3-pointers, needing less than six minutes to do so after checking in for the first time late in the opening quarter. He had 15 points on 5-for-7 shooting from beyond the arc by halftime alone, a boost that Brooklyn definitely needed.
And his shots came at big times. Of Teletovic's five 3s in the first half, three broke ties. His sixth 3 of the game, late in the third, tied the game at 61.
But in the end, Miami was too much.
"This series is far from over," Johnson said.
Miami was scoreless for the game's first 3:32, the longest Heat drought to open a home game since Feb. 26, 2005 443 contests ago. And that set the tone for some serious offensive struggles in the early going, with the Nets scoring only 21 points in the first quarter and still leading by six when the period was over.
James had only three shots in the game's first 21 minutes, then closed the half on a 4-for-4 flurry and Miami went into the break trailing 46-45.
NOTES: Trying to save a loose ball in the third quarter, James leaped over a row of people sitting along one sideline, then ran about 10 more rows deep into the stands. ... Mason Plumlee had three first-half fouls for the Nets, matching the entire Heat total. Brooklyn didn't take any free throws until the third quarter. ... Miami shot 6 for 18 in the first quarter, 12 for 18 in the second. ... Nets F Kevin Garnett, who went scoreless in Game 1, had four points.