The 32-year-old, who is now the oldest Olympic alpine title winner, fell on his back in relief as much as jubilation after crossing the line.
Home favourite Bode Miller recorded the best time of the second run to take silver, with veteran Norwegian Lasse Kjus in third.
Eberharter has dominated the World Cup season but failed to live up to his reputation in Salt Lake City in the early events.
The Austrian had to settle for silver in the super-G and bronze in the downhill.
However, he made amends with a sensational performance in the the giant slalom, covering the course in a combined time of 2 minutes 23.28 seconds for the two runs.
The gold also means that Eberharter becomes only the fifth Alpine skier to win three medals at a single Olympics.
Three-time Alpine medal winners
1948: Henri Orellier
1956: Toni Sailer
1968: Jean-Claude Killy
1994: Kjetil Andre Aamodt
2002: Stephan Eberharter
At the halfway stage he enjoyed a 0.74 second lead over Italy's Massimiliano Blardone.
By the time he crossed the finishing line, his margin of victory had increased to 0.88 seconds.
"Two medals were great, but this is huge," Eberharter said.
"My position after the first run was not as perfect as it seemed because I still needed to take risks. I needed a pretty hard second run."
"I had to wait a long time for this. This was my last chance, it's definitely my last Olympics," he added.
Miller's silver was his second of the Games following his second place in the men's combined.
"I skied a great race," he said, with particular reference to his second run.
His time of 1:11.27 was the fastest of the competition and helped him climb five places from seventh.
"When I crossed the finish line, I knew I could not have skied any better. I didn't really care how I finished," he added.
Blardone fell out of the reckoning after injuring his leg at the end of the first run when he slid into the finishing area crash barriers.
The 22-year-old finished in eighth place.
Britain's Ross Green finished 29th overall.