OK. So your deployment is one node(master) for all application reads and writes, and other nodes(slaves) stand by just for failover and don't accept and reads or writes. Right?
I think you should apply this setting to all cluster nodes. But not because of the reason that "HAProxy could failover to any one of them". This setting mainly affects "other nodes"(slaves).
For example, you have three nodes, A(master, fc_limit = 256), B(slave, fc_limit = 256), C(slave, fc_limit = 32). So when you commit transaction to A, trx will be replicated to B, C synchronously. But since C's slave queue capacity is much smaller and will be full much earlier than A,B, it will feedback to A that "I can not accept trx any more" and make cluster replication stop. Then you can not commit transaction to A until C's slave queue is not full.
Simply speaking: flow control makes replication stop, and therefore makes writes (which are synchronous) stop, on all nodes until flow control is relaxed.