Timeouts on TCP connections are rather long (10, 30, 60 seconds). This is NOT the Modbus layer, but the Ethernet TCP timeout, which, by definition, is meant to be long. I think those Device timeouts are meant for the application (Modbus) layer, not the TCP layer.
We added the PING instruction to help determine whether a Modbus/TCP Slave is online or not with much shorter timeouts. It's possible that the slave TCP/IP device does not even support PING (try it out on your PC first using the command line command "ping"). However, if your slave supports PING's ICMP protocol, then use the PING's success status to drive your MRX/MWX instructions, and its error status to log that (and skip the MRX/MWX).