See, leagues value competitiveness, because that’s what brings in the revenue. If the good teams got all the good new players, the games would be pretty boring foregone conclusions. No one would attend, and nobody would make any money. Unless maybe you did some kind of schtick, like the Harlem Globetrotters.
So leagues try to help the worst teams get better, and the fastest way for them to get better is to get the best new talent. Of course, this doesn’t stop a lot of franchises from drafting the wrong players, or screwing it up even when they do draft the right ones, but then, there’s a reason why some teams stay good for a long time, and others stay bad for a long time. Although, I’m not at all sure which category the Red Sox belong in.