It’s super confusing in esphome docs.
In modbus sometimes one address can have two values to split, sometimes two addresses make one value(your case). Sometimes they are put together bitwise(your case), sometimes one address is integral part and another decimal part.
I wish I could help but I use only modbus rtu and you are using tcp, which is not documented in Esphome.
In case of modbus rtu, one use modbus_controller component, but I don’t see that in your partial code snaps.
There request interval is defined:
update_interval:
I see you using scan interval in your sensor component, no idea about that.