Here is why the battle tinting bitmap wasn't updating:
Between MV and MZ there was a little change about how Bitmap is implemented:
Since the updating part of FillRect wasn't present in the MZ version, the battle tint remained the same.
I guess it may be a hint of interest for the cycle color bug.
In any case, overwriting Bitmap.FillRect seems a total overkill for just an offset.
I would want your advice about using the official making the shift manually in each call.
Also commenting all the this._setDirty of the MZ code may have other undiscovered consequences.
EDIT: I made a pull request with the fix.

