We find that making our performance gated to customer's performance works pretty well. (We make our flexibility broader with our Option 3 (premium) in proposals.) For customization jobs, we also have a clause, ""If we haven't received your revisions within x days, the changes are deemed accepted."" it gives us decent leverage. Our time commitments are pretty much all ""up to Y days after <customer action>.""
Still, I think its most productive to understand that many of the people we contract with work in organizations with some degree of dysfunction. Most of our customers don't really read our agreement, or at least don't really process its implications well. Some of our contacts can use our options and rules to get the cooperation that THEY need from THEIR bosses.
I've come to look at this set of challenges as a sort of ""tough love."" Like it or not, they can view us in the same category as dentists: spend as little energy thinking about it as possible. Note that good dentists go out of their way to remind patients of what is involved with the current/planned visit-procedure, and when in the chair (after signing the release form ... that of course, you read in detail), they go through it again, as they do also when done.
It's also important to get the Controller or higher (not the IT manager) to sign off on the t&c of the project. There is then no legal excuse for ""we didn't know"" and is further leverage to keep everybody working with the same rules.
OK, this is windier than I'd meant. Sorry. My main point is that the whole thing is smoother for us when we layout the etiquette of the project, but then help them learn and follow the etiquette as if they are 4th-graders.