With a score of 301.14 points, Uno, 25, beat South Korean Cha Junhwan (296.03 pts) and American Ilia Malinin (288.44 pts).
Frenchman Kévin Aymoz finished just off the podium (282.97 pts).
Uno gives the host country its third title of the competition, after the gold medals won by Kaori Sakamoto on Friday and the pair Riku Miura-Ryuichi Kihara in the pairs event on Thursday.
The Japanese, injured in an ankle in training on the eve of his short program, skated with class to music by Johann Sebastian Bach despite a small error when landing a jump at the start of the program.
What followed went off without a hitch, earning him a standing ovation from the local crowd.
Uno had to be at his best to beat competition from American teenager Ilia Malinin.
Highly anticipated, the 18-year-old prodigy rose to the occasion with another masterful performance punctuated by six quadruple jumps.
Malinin, who is playing his first season as a senior, also became the first skater to land a quadruple axel at a World Championship.
Despite this feat, he was only able to take the bronze medal, edged out by South Korea's Cha, who produced a virtuoso James Bond-themed programme.
On the French side, Kévin Aymoz offered a faultless performance on the music of the film “Gladiator”, which allowed him to take fourth place with a personal best at stake.
Adam Siao Him Fa, missed his short program on Thursday, grabbed two places to finish in tenth position.