Our firm does not generally charge by the hour. The pros and cons have been well discussed and I won't derail.
But to solve this problem, when we quote clients, we have a simple price list and then a clause that says that we charge by the hour for clients that require extra time and attention.
In our engagement letter, we also explain that we allow 2 hours of support/presentation/consultation included with each income tax return and we bill after that.
Then, when we actually face such a client, we write them a short letter, telling them in advance that the time their situation requires (make it not so personal) enough time to where our firm loses money by producing their work at the current fee - and of course that's not a business model that works for anyone.
We notify them of the price increase for the future., and we explain that if the situation ends up requiring less time after all then we will reduce said price.
Sometimes it works (they take the hint because they don't want to pay more), and sometimes we get stuck billing for their ineffectiveness - which I hate just like you.
I hate that - but at least it protects our time and work.
We also do the one email a day trick.
We also will not write long emails - we make them call - which they seldom will.
We also do not answer questions via email in March and April, and we tell all new clients of this in advance. "I'm going to be honest with you and tell you right off the bat that during tax time, we become so over-saturated with work that our customer service is terrible during these months. Though I am sure to make myself very accessible for a reasonable amount of consultation during the remainder of the year".