You have to rerturn the keys, you can not hold someone elses property, so you were not foolish. You have to give some time for payment and 30 days is the norm, so he has a week left.
The longer you are in business the easy and less fightening this becomes. I work the insurance flood/fire trade for years and would be owned 10k's at any time, worse it got to was 50k, but it is part of the package.
As for getting paid don't panic, its pretty straight forward. Send him a letter after 30 days saying payment is due, give him a week/10 days to settle, (I give 30 days, cos I'm lasy at chasing bad debts too).
Then send a second letter by recorded delivery saying payment is now due cough up in 14 days or go to the County Court. Cheque will soon arrive. No one wants a court court judgement (CCJ) againist them, as it goes on their file and any further credit checks made againist that person, the CCJ will be there, and they will score bad credit points. As your client is a builder he will know all of this already, and thats why you soon get paid.
Don't worry you will get paid, but you may have wait a bit.