No, not strictly sufficient - makes it much less likely though
A client may connect to another node and still send the request to that host if the snitch picks it. You can make THAT less likely with some snitch trickery (setting the badness for the rebuilding host) via jmx
Can you confirm that disabling the native transport (nodetool disablebinary) is enough with Cassandra 3.11+ to avoid clients hitting inconsistent data on that node when they use LOCAL_ONE consistency ? (Particularly when the node is rebuilding …)
I'd like to avoid any fancy client configuration like blacklisting nodes.