It's a bit difficult to say without knowing if you had a 'stage payment agreement' or a contract signed with your builder before the project started. He may be entitled to ask for more money but certainly don't pay the final balance until it is all completed. Have you had building regs involved to ensure you get a completion certificate? If so, then this can be used as a guide when to make the final payment e.g. when completion certificate issued, pay in full.
You should only hold back payment equivalent to what any snaggings cost to put right.
The only other thing you could hold money back on would be the roof to ensure it is watertight. This would mean that either you wait until the first rainfall or ask the builder to water test it. Again, you should only hold back payment equivalent to what it would cost to repair the roof - use their quote as a guide.
Once all is ok in terms of the build and snagging then you should pay in full unless you have previously agreed a retention amount prior to starting.
Regards
UK Property Services