* I use Xmouse button control to assign application specific commands to the extra buttons.
Congratulations on fixing your mouse.
They obviously used the mechanical trickery to avoid having multiple PCBs or extra wiring and stuff.
Maybe they did not envisage the fifth side button to be used all that frequently. So it was not specified with that long a mechanical key press life expectancy, as the main mouse buttons. Such as left click.
I also use XMouseButtonControl. I'm very impressed with how well it is written, how smoothly and seamlessly it works, and its fairly easy to use GUi interface. Its program-ability options are simply amazingly comprehensive.
My mouse only has the normal 2 buttons + scroll wheel. But I suddenly REALLY badly needed a few extra switch buttons.
While I was researching software to use the extra mouse buttons (I was considering buying a multi-extra button mouse), I discovered XMouseButtonControl. It has let me have the extra buttons, even though I don't actually have them.
It is completely free as well!
Because it lets you re-map multiple simultaneous button presses as new keyboard key presses. So the (unused by the application) right button, when combined with another mouse button or scroll up or down movement, creates the extra buttons. Amazing and it works really well.
The application was mostly fully controllable by mouse, but had this annoying feature, that some things also involved pressing (often continuously) keyboard buttons as well, to do things.
Using that utility I can now control it fully from the mouse, which doesn't even have any extra buttons.