I am not sure what mouse you use - but I have been able to reassign the buttons in the Enhanced Client. I use one of the Logitech Programmable ones and what I do is set the macro (Use Potion in your example - just drop the potion into the hot bar) and then assign the keystroke to an obscure key combination in UO - and then in the mouse software - assign the button to the key-combination. It has worked fine for me.
For mounting an ethereal - just drop it in the hot-bar and assign the macro key. I believe there is a mount option based on a stored target and a dismount option - but I always use the ethy so I am not positive. I'll see if I can find it when I get off work later.
I believe that both UOCartographer and UOMapper work with the EC as well from comments I have heard on the boards here - but I've never used them.