To be honest, I don't get the harsh, visceral reaction some people have to unsolicited redesigns. I hate the attitude of many people who make such redesigns too, but I'm not impassioned enough to see a redesign presented with some humility as a personal affront.
The justification for many bad designs also rubs me the wrong way. I once read that the worst pedant is the one who uses the complexity of things as an excuse not to challenge the status quo. That a company has many bureaucratic barriers, legacy systems, conflicting research and internal politics is not an excuse for bad design. It's an explanation, but not an excuse.
I agree that designers should focus on creating things that will be actually be used, solving a real problem. This requires business sense, though, even if you're essentially working for free.
Real problems don't give you as much recognition as riding on the bandwagon of some hot company. It's a sad fact, but nobody ever got famous for designing a local deli website.