Regarding max HP, I presume there's no way to modify the correct value then?
I sense that I misrepresented what's happening and why your approach doesn't have the desired effect.
During battle, each actor (technically even the "set pieces" like the manholes and the tiny bronco) has a unique array of data that stores things like status, attack power, HP, MP, MHP, MMP, etc. For all damage calculations and status considerations the game uses this array to perform its calculations against. However, the menu at the bottom of the screen does not. At the beginning of the battle the battle module reads the data from the save data for the characters and creates the menu from these values. During a normal battle, MHP/MMP are NEVER UPDATED. The only exception is the battle arena which essentially rebuilds the menu from this array at the end of every battle. That's how the break materia/half HP/level down effects work. They adjust the character's data and the menu is rebuilt. There is no way to trigger this in the middle of a normal battle.
As for the limit changes, get a hex editor and make the following changes:
Address: Former Value: New Value:
=========================================
0x1C60A4 8B 8A
0x1C60A5 45 8A
0x1C60A6 E0 C0
0x1C60A7 8A 8D
0x1C60A8 8A 9A
0x1C60A9 C0 00
0x1C60AA 8D D0
0x1C60AB 9A F9
0x1C60AC 00 90
That should halve the limit bar value at the end of each battle for each character. Limits will be hard to get at upper levels after this.