As an example in a non-keeper league, I was offered a trade in the CBS AL Analyst League right before the deadline. Frankly, the trade would have helped me move up from my blech 8th place spot to perhaps as high as 6th, but I likely would have handed the other team a title. I turned down the trade on that basis alone, and I think I made the right decision.I was not in exactly the same position in N.L. Tout Wars (Nate Ravitz of ESPN is running away with it), but was lukewarm on two potential trades because I didn't see much of an opportunity to move up or down with only four weeks left.
This is a thornier issue in keeper leagues. Most leagues have a trade deadline of July 31st or earlier for this reason. At the very least, some leagues use the Byzantine contiguous trading rule (like my home league A.L. does) in the month of August. In theory, a middle of the pack team can pack it in and dump to a team in contention, but usually the contending team has a very poor chance of winning anyway.
If your league is a keeper league with a late trade deadline (or no trade deadline at all), I can't really blame you if you make a move to improve your team for next year that helps your opponent out in the standings. If you're getting a player who is a freeze next year, then you are acting within the confines of your league's rules.
The best way to deal with this is to have an earlier trade deadline or some kind of penalty for finishing toward the bottom of the standings. I like the American Dreams League model of penalizing teams that finish 9th through 12th with fewer freezes. A team is less likely to trade two studs for a $10 Carlos Carrasco if that trade is going to cost them keepers.