Detection of a crashed charger is not reliable enough.
The ideas:
Bump pyModbus to v3.7.4 and test (which is difficult because one can't make the charger crash and the mock does not mimic charger crash very well).
Recheck the exception handling code.
If still not working, skip working with exceptions from the modbus library and go back to original implementation that only looks at number of retries for __force_get_register() method.
Detection of a crashed charger is not reliable enough.
The ideas:
__force_get_register()
method.