Trae Young scores 24 as Hawks beat Heat 123-118
Carter's 17-foot jumper off a pass from the 20-year-old Young broke a 118-all tie.
"Vince is the man," Young said of the 41-year-old Carter.
"It was crazy, like a little throwback moment for me. From a few guys talking in here after the game, it was a throwback moment for everybody."
Carter had 12 points despite giving up his starting spot so rookie Omari Spellman could make his first start.
"It was Vince Carter being a pro, wanting to help some other guys get going and sacrificing," Hawks coach Lloyd Pierce said.
Richardson scored 32 points, setting a career high for the second time this week, but Miami was held scoreless in the final three minutes of its third straight loss.
The Heat trailed by 15 in the third quarter before rallying to a 111-110 lead in the fourth.
Players on each team were quick to launch 3-pointers in the fast-paced game.
The Hawks made 13 of 32 3s, and the Heat connected on 16 of 40, including 6 of 10 by Richardson.
Miami allowed more than 120 points for the third straight game.
"I feel like there wasn't a whole lot of defense being played both ways," Richardson said. "We let them score too easy."
A 12-0 run, capped by a 3-pointer and pullup jumper by Young, gave Atlanta its biggest lead at 86-71.
Young dribbled through traffic and made a short floater at the buzzer to give Atlanta a 102-93 lead entering the final period.
Richardson's jumper tied it at 116. Following a flagrant foul against Justise Winslow, Young's two free throws got the lead back for Atlanta.
Miami held out point guard Goran Dragic due to persistent pain in his right foot. Dragic, second on the team with 17.7 points per game, had a cortisone shot earlier in the week.
Dwyane Wade had 19 points for the Heat.
Heat: Wayne Ellington made his season debut after returning from a left ankle injury. He finished with five points. ... Winslow had 15 points, 10 rebounds and eight assists in his first start of the season. ... Richardson had 31 points against Sacramento on Monday.
Hawks: Spellman had seven points in his first start. ... G Kevin Huerter scored 12 points after spraining his right ankle in Thursday night's loss to Sacramento. ... Atlanta had a season-high 32 assists.
The Hawks scored 41 points in the first period and led 74-68 at the break after making 60 percent of their shots from the field. The Hawks shot 52.3 percent for the game.
"Giving up 40-something in the first quarter, that's hard to come back from in this league," Wade said.
Wade and Carter swapped jerseys following the game.
Wade, who has announced this is his final NBA season, said he enjoyed the on-court competition with Carter.
"We were having fun," the 36-year-old Wade said. "Guys our age, that's what we're here for, to enjoy the game. He's a little older than me but we're here to enjoy the game. It was good to have that banter back and forth. The guy can still play. I can still play."
Heat: At Detroit on Monday night.
Hawks: At Charlotte on Tuesday night.