Personally, when I deal with contractors, I will try and buy the materials myself. Then hire the contractor to do the labor. I won’t pay them a dime until they finish. When they need to buy materials to complete the job, I always tell them to have the vendor give me a call when they’re at the cash register and I’ll give them my credit card info. So, the contract don’t have to pay a dime to do the job. But then they won’t get paid till they finish the job as well. I’m not sure how a hard project would work, but I would try to follow that philosophy. I’ve complete gutted out my house, put in new kitchen, bath, flooring, etc. and that method have worked out well. I tend to fill the garage with materials, then contact the contractors.