I called to cancel a card one time and they asked why and I mentioned that it was my highest rate card. They said "well, sir, what would you like the interest rate to be?" I gave them a number that I felt was reasonable and they were happy to do it. I'm not sure why that would matter to me though looking back on it, I haven't had a balance on a credit card in 12 years. Later, I still cancelled it to make room for a card with a signup bonus.
You probably could transfer the balance to a new card if you have good credit, so maybe look into that and see if they can do better than the new option. If not, move on over to the new one.