I like the idea of bullying Knotzis through information theory lecturing, so you earned those merits there. If memory serves right, Bitcoin Core will use some nodes solely for blocks, not mempool, so you could allow that kind of connection. But, blocking their IP altogether seems funnier, I know.
It would would be easy to limit the blocking to blocksonly (fRelay==false) connections-- though arguably they're also less useful for block propagation because they're missing more transactions, so they'll relay blocks slower and also request more transactions from you when you relay blocks to them.
Allowing the blocksonly connections also addresses the concern I raised about partitioning, though so it would be a more reasonable choice if many people were to do it.