If someone puts too much weight back on they lose half their purse like they when someone misses weight. The fight wouldn't have to be cancelled.
Any fighter who can't stay within 10 lbs of their weight class would have to jump up a division and fight where they are closer to the actual weight class. They might have to add a 195 and 215-225 division though.
If there were more HW's that would be easier.
This creates the same problem though, you would have fighters who naturally weigh around 195 fighting at 205 and that is just as "unfair."
Of course we could add new weight classes as you suggested but that would dilute the talent pool to the point where there'd be about 6 fighters per division.