Promises are a contract. If your vendor made promises, and he is not delivering, then you have every right to tell him that you will not honor your end of the contract if he cannot honor his end. I believe that your reputation is at stake here, and it may be damaged because the vendor is not delivering.
So, does the vendor have a product or service which cannot be easily replaced? If, for example, his prices or skill level is such that he is not expendable, then you need to reinforce this idea in the mind of your client. If the vendor is expendable, then your option is simple. You tell the vendor to deliver on schedule, or you will find another vendor who will. There are many ways to rake people across the coals when they betray you in business. It may be a government agency, like a licensing board or the department of consumer affairs, or simply getting the word out to others in the business that this vendor is unreliable and will not deliver on schedule. When this is said and done, if this person has betrayed you, take a specific amount of time, let’s say, 40 hours, and devote it to legal methods of obliterating this person’s reputation and business completely.
If this guy is expendable, he will probably try to talk in circles about his contract, blah, blah… don’t let him get away with that. Be quick, be specific. “I want X by Y date, or I will find someone else who can deliver. If you don’t like it, I will see you in court.” You can represent yourself in court or hire an attorney, but the burden of proof is on him, and especially if he has promises in writing that he is not delivering on, then he is in breach of contract, and it would be a waste of time and money for him to pursue this in court. His stupidity and ineptitude is not your problem unless you let it be your problem.
How you handle your client is a completely different matter. Seduce them. Buy them lunch. Buy them tickets to a sporting event. If the client is at fault for making requests that delay the schedule, I don’t know if I would even mention that to them. Make your client want to be in business with you, even if you are more expensive or take a longer time. Play up the end product. Just imagine when this is completed; this is going to be the highest quality widget that will suit your needs perfectly. Hire a very pretty person of the opposite sex to start dealing with them. Turn the let down into a benefit. Tell the client “when you suggested X, my vendor had to change the way he is handling this, but he thought the idea was brilliant…” Let your client talk about themselves. People are very ego centric and love to wax on about their own ideas and lives. I think flattery and seduction are the ways to soft sell, and it sounds to me like you are in a business that requires this skill.