I personally would make sure to choose a mouse with on-board storage. E.g. most (all?) Logitech mice store DPI and RGB on the mouse, which means it works independent of the OS. At least some other manufacturers require a Windows "driver" to disable RGB and configure DPI, which is annoying as those aren't available on Linux, and have to be constantly run in the background.
Basic configuration of Logitech mice can be done through Piper on Linux.
Edit: Precision shouldn't be an issue with any decent mouse sensor. The PixArt PMW 3310 or later is good enough for even gaming and can be found in 20$ mice. Comfort is subjective, but I prefer larger mice where I can put most of my hand on top.
Edit 2: I've now read you're already using a Logitech mouse and are having issue with the the side buttons. What issues do you have with them? My G Pro Wireless side buttons work for going a website back/forward in the web browser, but I don't use them much.
I'll second the onboard storage, and add that any >3-button mouse should have buttons that map to actual key/character presses. I got a Razer Basilisk Pro on clearance, and it does have onboard storage, so once I turned off the RGB in the windows software on an old laptop, I could get rid of it. What I didn't realize til later is that the nice little thumb lever can't be remapped by anything but the Razer software (which has to be running all the time) because it doesnt register as any key combo, it had to be processed through their app to be used. Damn it.
Edit: Have you tried looking at what keycodes the side buttons on your current mouse are mapped to? Sometimes you can intercept that input and make it perform correctly. I haven't done it on linux yet, but I'm sure there's an equivalent to AutoHotkey for Linux.
PS: My old Logitech G710+ keyboard has some extra buttons which show up as normal numbers, which makes them pretty much useless. A while ago I found the now abandoned sidewinderd project which adds support for them. It's sad that those manufacturers don't create proper standards for these kind of things and instead hack it together somehow.