Belmonte-Garcia, who claimed silver in London four years ago, pipped Australia's Madeline Groves in a pulsating Rio final to touch in 2min 04.85sec, for a winning margin of just three hundredths.
Japan's Natsumi Hoshi, the reigning world champion, clocked 2:05.20 to match the bronze medal she took in London after a disappointing swim.
It was Belmonte-Garcia's second medal of the Rio swimming competition after the 25-year-old took bronze in the 400m individual medley earlier in the week.
China's hopes of a hat-trick of victories after winning this event in 2008 and 2012 were dashed as Zhou Yilin and Zhang Yufei could only place fifth and sixth respectively.
While perhaps lacking the crackling intensity of a Michael Phelps race, the battle between Belmonte-Garcia and Groves – who led for most of the contest – brought Brazilian fans to their feet with Hoshi also briefly threatening a late fightback.