Hi Peter,
It sounds like you need to do something about your credit control, especially on commercial jobs, where the invoice value may be attractive, but if your not getting paid quickly you could end up with one hell of a cash-flow problem with the added risk that some may default on you or go belly up.
I'm sure you have, but have you thought of altering the way you quote for jobs? Instead of just having one price for the job and have two, even three. The highest price is for payment beyond one month, the next for payment within 28 days and the lowest for payment on completion. When people see how much they are saving by paying now, they often take that option.
Just a thought, hope it helps.
Simon