Media playback is not supported on this device
Long's 170kg lift with his last attempt in the clean and jerk saw him grab gold from London 2012 champion Om Yun-Chol of North Korea, who lifted 303kg.
Thailand's Sinphet Kruaithong took the bronze medal at the Riocentro Pavilion 2 with 289kg.
In the snatch segment, Beijing 2008 winner Long matched the 16-year-old Olympic record of 137kg.
Subscribe to the BBC Sport newsletter to get our pick of news, features and video sent to your inbox.
China's Long Qingquan lifted a combined world record of 307kg to win Olympic gold in the men's 56kg weightlifting.