Reincarnating objects is normally not a good idea. It is better to use a new id for a new object, such as a generated id.
If you must reincarnate and object, try doing it in a separate transaction, or at least call flush() after the remove to delete it from the database first.