Denver coach George Karl said the Nuggets helped the Hawks with their 20 turnovers and poor rebounding.
"We thought fundamentally rebounding and turnovers were going to be the keys to the game," Karl said. "We just didn't do a good enough job there.
"We gave them way too many extra possessions. In the end it hurt us in a close loss."
The Hawks began the night leading the NBA with 18 turnovers forced per game.
Lawson had four turnovers, including two in the final minute.
"I feel bad for him," Karl said. "He had a great game going. He was the best player on the court for most of the night until the turnovers at the end. He just had a big-time game.
"We need some other guys to jump in and start playing well, too."
Two free throws by Danilo Gallinari with 2:34 remaining gave Denver its first lead of the final period at 98-97. Lawson's 3-pointer gave Denver a 101-99 advantage before Horford hit a tying jumper.
Following a missed jumper by Denver's Kenneth Faried, Williams made two free throws. Smith then delivered the key three-point play.
"We've just got to get better in late-game situations — me included," Lawson said.
"Letting teams get offensive rebounds, putbacks and turnovers, that's what killed us tonight. If we could have controlled that we could have won by at least 15 points."
The Nuggets were without center Kosta Koufos, who remained at the team hotel with the flu. Timofey Mozgov had six points and 13 rebounds in his first start of the season.
The Hawks had first-half success with their big lineup, with Zaza Pachulia at center and Horford shifting from center to power forward. The big lineup usually benefits Horford, who has room for more scoring opportunities away from the basket.