The unfancied 20-year-old Georgian, the world number 32, defeated Hungary's Miklos Ungvari, 31, to send a small but incredibly noisy group of fans from his homeland wild.
He had reached the final by stunning Japan's Masashi Ebinuma, the world champion, who he hurled to the mat for an automatic winning ippon half way through their semi-final encounter.
Ebinuma had only got to the last four after chaotic scenes followed his quarter-final match with South Korea's Cho Jun-Ho.
That match finished scoreless and the referee and his two judges at first raised their blue flags to indicate Cho had won, to the jeers of the crowd.
The cacophony of boos helped force a reviewing jury to take the unprecedented step of overturning the result. Earlier, all the other top rated judokas crashed out before the final stages.
The raucous crowd erupted when Britain's Colin Oates, 29, beat Mongolia's Tsagaanbaatar Khashbaatar, the world number two and bronze medallist in Beijing, in extra time.
However, Oates could not repeat that success, losing out in the quarter finals to Shavdatuashvili.
Ebinuma took bronze, beating Poland's Pawel Zagrodnik, 24, with an ippon, and enjoying another bit of luck when an ippon awarded against him was overturned.
Cho, the other fighter involved in the earlier controversy, also grabbed bronze - this time being on the right side of the referees' decision after his match with Spain's Sugoi Uriarte had ended all square.