First step is to severely beat the dog so it knows it is lower down in the pecking order than your son.
Second step is to get rid of it. You shouldn’t ever keep a dog that growls at a 3 year old. Any decent dog should be protective of your 3 year old.