I'm not sure about it going back to b91. I've been using b91 for years and have never had any of the problems I listed. What about the idea that it's actually Java that's the culprit, and not MapTool?
Also, here's another one for you. I've got a fairly simple macro I use to remove ammunition from a token, and for some reason when I use it, the game will completely refuse to allow me to unselect a token, or select a new one. Right clicking to pan the map causes it to jump around a bit.
This is all related, I feel. Too many things acting up in similar ways, for completely different reasons. I included the macro code below. Again, 100% works fine in my version of b91, but I'm using an older version of Java.
[h: assert(isGM(),"You must be a GM to run this macro",0)]
"Magazine|Revolver|Which Magazine|LIST|SELECT=0 VALUE=STRING")]
[h:assert((ShotsFired<=CurAm),"You have shot more than your current magazine holds. Please input a valid number.")]
[h:assert((ShotsFired>0),"You cannot shoot less than a positive number of bullets. Please input a valid number.")]
<b>Fires [t:ShotsFired] Shot(s)</b>
[t,s:"<br><b>"+CurAm+" </b>/<b> "+MaxAm+"</b> Bullets left in gun."]
[H: bar.bullets.9mm.empty = MaxAm * 0.0325]
[h,if(matches(Magazine,"Revolver")):bar.bullets.9mm = CurAm * 0.0325]