The England midfielder struck a stunning equaliser after 68 minutes at the Lluis Companys Olympic Stadium and then settled his first El Clasico with a close-range volley in the dying moments.
Real’s Bellingham-inspired fightback took them back above Girona to the top of LaLiga and left Barca third, four points behind.
Bellingham has now scored 13 goals in as many appearances in what has been a remarkable start to his Real Madrid career.
Barca took the lead on six minutes when Gundogan combined with fellow former City player Ferran Torres and calmly fired past Kepa Arrizabalaga.
Vinicius Junior spurned a chance to level and Barca almost doubled their advantage when Fermin Lopez struck the post.
Real also hit the woodwork when Dani Carvajal drove against the post before the break.
Lopez hit the post again early in the second half and Kepa reacted quickly to deny Ronald Araujo on the rebound.
Real began to rally in the latter stages with Aurelien Tchouameni having a powerful drive touched onto the frame of the goal.
Bellingham then took charge of proceedings when he brilliantly curled home a shot from 25 yards.
The game could still have gone either way and Robert Lewandowski had a chance to put Barca back ahead when he fired over 10 minutes from time.
It was Bellingham who was to have the final say, however. The 20-year-old was once again in the right place at the right time as he pounced to clip home after a Cavajal cross was flicked on by Luka Modric.