Son scored the first and the last of the goals at the BayArena with Stefan Kiessling also on target with his ninth of the season.
The result leaves Leverkusen four points behind Bayern at the top of the table while Nurnberg remain in a share of bottom spot, three points adrift of safety.
Nurnberg, still searching for their first win of the season at the 14th attempt, were keen to capitalise on any insecurity Leverkusen had after their 5-0 defeat to Manchester United in midweek.
The Bavarians allowed their hosts little time on the ball, and they were close to taking the lead in the 19th minute when Makoto Hasebe struck the left-hand post with a powerful effort.
It was probably a sign of their misfortune this season that it was already the 13th time they have hit the woodwork without the ball ending up in the back of the net this season, and the second time for the Japanese midfielder.
Leverkusen, still seemingly suffering a hangover from Wednesday's humiliation slowly started to find their feet, and almost with their first real attack of the game, they took the lead.
Hiroshi Kiyotake gave away possession to Gonzalo Castro, who pulled the ball back for Son, who provided an accurate finish into the left-hand corner.
Timothy Chandler warned Leverkusen that they were still in a tight game early in the second half when his shot tested Bernd Leno, but Nurnberg's hopes were effectively ended a minute later when Kiessling scored against his former club.
Jens Hegeler sent the German striker through in a one-on-one situation which he did not waste, slotting the ball past his former team mate Raphael Schafer as if it was a training game.
Son then wrapped up victory for Sami Hyypia's men, Castro once again the provider, setting the South Korean up to beat Schafer with another low shot.
Nurnberg showed some good fighting spirit, testing Leno several times, but failing to find a way of beating the German goalkeeper as they extended their winless start to the season to 14 games.