When you only have a handful of clients, even the shittiest one matters. Setting standards for what you will or won’t put up with this early may not be optimal. Getting the framework in place internally for your team to identify the problem clients, keeping the toxicity transparent and distributed through proper heatsinks will lead to the more organic evolution of what you will or will not put up with from a client when money is involved.
So part of the framework could actually mean de-prioritizing the client’s work internally, while prioritizing communication and expectations for some time. You could also boost morale of your team by requiring sign off from leadership on every little deliverable to show that you acknowledge the problem and those managing it internally.
Money is money, this client didn’t take their money away, right? That’s the only thing that matters. De-escalate the situation and have a nanny comfort the idiot parting with his money - play it smarter, silo off communication from the the rest of the team and have it go through the nanny (and pay the nanny a bonus later for managing the situation). If the current point of contact is not working, have them become the bad cop, and throw in a good cop temporarily. Have bad cop always deliver the obvious requirements, have good cop deliver their special requests. In fact, reset the relationship with the good cop and just have him/her straight up appeal to the client ‘we believe this project can be handled better’.
But don’t send away the money if it’s not walking away on it’s own.