I'm personally a fan of a solution for the NHL playoffs proposed by Down Goes Brown.
Basically you count the wins (or won-loss record) starting the day after each team is mathematically eliminated from the playoffs.
So if you're eliminated on August 30th, you tally up the wins starting August 31 for your team. If the next team is eliminated on September 3rd, then you have a 3- (or 4-) game head start on them to tally up more wins.
It incentivizes tanking earlier (and thus still encouraging deadline dealing) maybe, but it will also incentivize teams to actually play to win if they want to get the top picks.
Not sure how you'd do it in MLB where it's based off of winning percentage (as opposed to wins / "points"), but it would give the worst teams a better chance while giving them something to play for.