I sympathize with the position you are in. I am a Realtor and I have a few clients in the same position. I have sold several houses this year, twicw as many as last to be exact and it's only ealry May. There are three things that factor into selling a home, Area, Condition and Price. If you are in a great area and you keep your home in great showing condition it should sell within 5 to 6 months. The days of 7 day offers are gone as far as being the norm. Ask your agent for proof of marketing of your property as far as internet, print, etc. I have sold homes in Chicago recently in as fast as 30 days and I have had others listed as ling as 400 days because my sellers refuse to believe my comparisions I show them and they decide to lower price long after they should have basically chasing the market down. Price is the biggest factor in selling a house now and if you bought in '04 or '05 and expect to recoup that it is unerealistic. Good luck and God Bless.
It boils down to two things: What is legal, and what is moral.
If the agent has agreed to perform a certain task "get my home sold within 45 days" and fails to perform, I think you have a case for cancelling the listing. If the agent does not perform as promisted (open houses each week, ten showings in the first two weeks, etc.) that might be a case.
I agree with talking with the broker (the agent's boss), however if you, as the client, do not receive the service you need, then IMHO you can ask to cancel the agreement. We are paid based on results.
The big problem with most disappointed clients is the failure to set and meet expectations. Most disappointed sellers feel abandoned (my agent never calls), and they feel that no one is working on their side.