Duke (13-2, 1-0 Atlantic Coast Conference) avoided consecutive defeats for the first time since Feb. 11 and Feb. 15, 2009.
Glen Rice Jr. scored a season-high 28 points and Mfon Udofia finished with 19 points for Georgia Tech (7-8, 0-1 ACC). The Yellow Jackets, who never led, have lost four straight.
Kelly was 14 of 14 from the free-throw line, including eight in the final 40 seconds to help seal the victory.
Following Thursday's five-point loss to Temple, Duke coach Mike Krzyzewski started freshman Quinn Cook at point guard instead of Tyler Thornton and reinserted senior forward Miles Plumlee in the lineup in favor of Kelly.
Freshman Austin Rivers finished with eight points, but gave the Blue Devils a boost after missing a pair of free throws with 3:26 remaining and his team leading 68-66.
After forcing a runner that missed, Rivers stole the ball from Mfon Udofia and scored a fastbreak layup to make it 70-64 and energize the Duke bench.
The Blue Devils took a 72-66 lead with 1:08 remaining when Curry bounced a pass off the glass for an assist that Mason Plumlee converted for a layup that made it 72-66.
Mason Plumlee's three-point play at the 8:07 mark of the first half gave Duke, which began the game shooting nearly 71 percent from the field, its biggest lead at 18.
But the Blue Devils didn't score another field goal in the first half after Andre Dawkins' 3-pointer from the right corner made it 36-24 with 4:07 remaining.
Georgia Tech closed the first half on an 11-4 run that included Pierre Jordan's alley-oop, fastbreak pass to Jason Morris for a right-handed dunk in front of Mason Plumlee at the 1:22 mark.
The Yellow Jackets outrebounded Duke 38-26 and were led by Rice's eight. Duke outscored Georgia Tech 18-10 in points off turnovers.