Sure, it sounds logical to stop matchmaking if one job of the whole cluster is rejected. All the other jobs in that cluster have same requirements.
But that is not the problem. The problem is, that you can't say 100% "no match found" for a job if you only try to connect to the first machine that has the highest rank.
Especially if that first machine blocks traffic, you cannot assume that all the other lower ranked machines will also block traffic.
I am not sure, if it would be better to try to matchmake every job of a cluster with all machines (in rank order) which comply with the requirements until the first machine is found which has no network problems. The negotiator could get too much work in some extreme cases...
Just to be clear - the two "clusters" here are different things.