If I had to guess, i would guess it’s because somehow it’s easier for people to think “This person rolled on an item they don’t need” instead of “the system decided this person gets loot”. That is, the first one they feel some player agency on, the second just happens behind the scenes.
I mean to be fair, the first is a player problem, not a game problem. People being selfish scumbags is nothing new to WoW, and something that has never been addressed nor fixed (whether by Blizzard or the community as a whole). Ironically, personal loot was an attempt to fix that, and people just complained about that. Even more ironic, this problem (people rolling need on items they didn’t need and then trying to sell them or give them to whoever they felt was most deserving) was the #1 reason why personal loot was added in the first place. Stay classy, WoW community; it’s pretty clear the WoW community cannot be trusted to behave at all.
It all goes back to the erosion of community in this game, of which cross-realm is the biggest offender. There’s no repercussion for needing on anything, whether you need it or not, or, worse, needing and then trying to sell it to people who really need it. In the pre-cross realm days (including Classic) these people would be ostracized and/or called out so people knew what kind of person they were, and knew to avoid them. But now? They do it, nobody cares/can stop them, and go off to do the same thing again later because everyone else might as well be faceless NPCs.
I get that dead servers needed something to help them, but cross realm was NOT the answer and virtually destroyed all sense of a community policing its own.