It seems that the solution is simple. You need to have a good relationship with your contractor. You need to "trust but verify" as an old politician used to say. But it goes both ways. You also need to treat the contractor the same way you want to be treated. They too, have been ripped off by many clients. Making changes after you agree on a project, and then expecting no delays or extra expenses is one of the big problems for them. Buying materials that they are not used to working with may slow them down, and end up costing you more in the long run. If everyone agrees that they want to do a good job, at a mutually beneficial price, and within a certain timeline, that should happen. If it does everybody wins.
If either the contractor or the investor causes this agreement to be broken then something is not right. Both sides end up losing. The contractor will probably not be rehired and may have some negative publicity, so they will lose some money. The investor will lose some money. If both sides work together to meet the agreement both sides win, and both sides make money (hopefully). b Doing a rehab shouldn't be a competition but a team project! /b