Why does "classification+regression" work better than "classification" in my NN?
You are using accuracy to estimate the performance of your model, which is a bad idea. You can't understand the limitations and advantages of your model using accuracy as a evaluation metric. Consider the following situations 


Your model predicts 36 instead of 37
Your model predicts 106 instead of 37


Accuracy as a evaluation metric, treats both of them in the same way. I'd suggest you to go with MAE or RMSE for evaluation. You can train the network either using classification or regression, but make sure that you evaluate it using the right metric. 

Btw, the multihead idea is really good.