A couple of ways i guess-
You can not allow them to keep two guys from the same round, or you can push rounds, or as the previous poster suggested you can push with a later round thrown in.
I personally think just straight pushing isn't fair for the reasons you stated. Finding a proper value for a push round and a later round is tough though, in the instance you suggsted by the above, to keep Arod you would need to.
Give away a 2nd, and a 10th round pick as he suggested. Except in a 6man keeper league that 10th round pick is the equivalent of a 16th round pick, and I hardly think thats fair either.(in a 12 man, that 16th round pick is for #192-208, and anyone wouldn't take that for arod is crazy).
Have a long discussion with your league mates and come to a decision, its not something that should be decided by 1 person.
Check out my blog at http://www.rotopulse.com for fantasy baseball analysis, injury reports, commissioner info and more.