First i want to make it clear that i agree with you that counting the dominant zeros/integer size in a hash is much simpler and faster.
Point A)
It is obvious that you do not forward anything received before you double check it and compare it in case of block hash with your own best result. So a modest performance node can only flood minor performance nodes.
Sorry if i did not mention that but i was aware of this practice and should not change it.
Point B)
Yes you can set a minimum difficulty in both cases but just to set a minimum performance level so you don't have to much spam.
I do't consider problem have each node verify few blocks each round in fact may be beneficial for the hole system instead of
spending all processing power chasing the best block.
Point C)
What is the max range of possible bit transitions? 128
Is it easy to generate them? not so straight
Is it easy to count them? yes simpler than generating a random one of them or calculating a hash