The real problem is that this is a bug even more than a limit, since you can have more than 65k HP/SP/MP, but it only shows the points that are left above that amount.
In case it helps to solve this bug: the data type that stores our HP/MP/SP has a capacity of 2^16, which is 65536. Every point we have above that amount is displayed once we exceed it. So either the first variable is overwritten, or a second variable is made that stores the rest and only that second variable is shown.