A much simpler solution is to make unfitting stat rolls on items rare.
Diablo 3's smart loot is a decent example of how to make random loot more fun, but obviously it wouldn't fit perfectly in a game like this where not every character gets their own loot.