From the detail you have given he hasn't over paid his tax.
Everyone has a yearly tax free pay which for most people is split into 12 portions, you get a portion every month and any earnings above that are taxed at 20% (there are higher rates for higher earners but will assume lower earner for this example).
Tax free pay is £12,000 per year (i know for most it is a bit more than this but trying to keep figures simple).
You earn £24,000 per year.
Each month you earn £2,000 so first £1,000 is tax free, you pay 20% tax on the remaining £1,000 so your monthly tax is £200.
In july your husband earned £4,000 but still only gets £1,000 tax free pay for july as isn't yet entitled to august tax free pay.
£4,000 less £1,000 tax free leaves £3,000 to pay tax on so his tax bill is £600 - not double his normal monthly tax bill of £200 as he has to pay tax on on £1,000 that isn't tax free yet.
Now if he hadn't got a new job in august he would have another £1,000 tax free pay due and so would be due the extra £200 back he paid.
However, in this case he did get a new job, lets assume same wage so he received another £2,000 in august, his tax free pay was used so £200 tax paid.
That extra £200 tax isn't now due back, it was deducted correctly as basically your husband is going to receive 13 months pay this year and not 12. So instead of receiving £24,000 (and paying (2,400 tax) he will get £26,000 (so pay £2,600 tax).
I hope that explains it for you op.