Moldoveanu missed the 10-point center of the target just once in his 60 shots during qualifying and his score of 599 equaled the Olympic record, but that only left him tied with Italy's Niccolo Campriani heading into the finals.
The final 10 shots are measured to the decimal point to help break ties and when Moldoveanu scored a 10.3 on his first attempt he took the lead for good. His lowest score during the finals was a 9.9 and he produced a total of 702.1 points that included all 70 shots of the competition.
Moldoveanu won Romania's first gold medal of the Olympics.
Campriani, who finished 12th in this event at the Beijing Olympics and who won the world title two years ago, finished second at 701.5. Gagan Narang of India was third with 701.1.
China's Wang Tao had an excellent chance for a medal but he wound up fourth after recording scores of 9.3 and 9.2 on his third and eighth shots of the finals.