Ando, 19, the only top competitor not to stumble in the free skate, recorded a total of 195.09 points to Asada's 194.45.
South Korea's Kim Yu-na, the gold-medal favourite after an excellent short programme, fell twice on the triple lutz but completed an Asian clean sweep by coming third on 186.14.
"Until recently the Europeans and Americans always dominated the podium," Ando told reporters. "But now Asians are becoming top skaters at the world level and I think we are now on an equal footing."
Asada made the crowd roar with a brilliant opening triple axel in her free programme but had them worried with a slight stumble coming out of a triple toeloop.
After that the 16-year-old skated well and shed tears of joy after earning technical merit marks of 69.64 and 63.49.
Holder Kimmie Meissner was not at her best and the American had to interrupt her initial combination when she lost her balance and put her hand on the ice. She avoided falling again and finished fourth with 180.23 points.
European champion Carolina Kostner of Italy, third after the short programme, fell on her first jump and finished sixth.
Ando's triumph was redemption for the teenager after the intense criticism she suffered for finishing 15th at the 2006 Olympics.
"After Turin I had such a hard time but thanks to my new coach (Nikolai Morozov) I came back strong," she said.
Ando started confidently with a triple lutz and triple toeloop but downgraded her eagerly-anticipated quadruple salchow to a perfectly executed triple.
"In practice in the morning I felt really good and my quads were working well," she said. "But in the evening we decided to concentrate on putting on a good overall performance and opted to leave it out."
Ando stacked the first half of her programme with jumps and left the more artistic contributions to the end, delighting the 6,000 fans in the arena.