Because we give players especially the failing ones too much time. If a player performs poorly for us but we sell within a couple of years of signing, they aren't too far removed from their good form before joining us. This means they still have a reputation and demand. We saw this as we got got decent value out of Lukaku, Memphis, Dan James and Di Maria.
Once you keep the player too long, the idea of their good form is a distant memory. Players like Donny, Martial, Lingard, Bailly, Tuanzebe should have been cut much earlier and we'd have gotten decent value. McT would've been in this group too but his Scotland performances are giving us leverage.
Sancho and Maguire fall into this category now, we need to cut losses asap. Another bad season from both and their transfer value will be so low that we'll almost be forced to keep them.