code causes transistor to overheat

You never declare pumpPin2 as OUTPUT, so you just are turning the internal pull up on/off.

pinMode(pumpPin, OUTPUT);
pinMode(pumpPin, OUTPUT);

Should be

pinMode(pumpPin, OUTPUT);
pinMode(pumpPin2, OUTPUT);

Leo..