I am not aware of anything built into nhibernate that would do what you are after.
Warning Hack Ahead
I haven't tried this so this is just thinking out loud about how nhibernate tracks the objects.
Depending of the Object graph you could reset the version (if any) and id back to the default specified in the mapping and that should create a clone as it effectivle resets how nhibernate tracks the object and when saved it will have be given a new Id. Also note that any attached mapped objects would also need have the same done to get a deep clone.
If it was me I would probably put a clone method on the object that returns a new object with a copy of the properties, etc.
Some other answers on SO suggest using Automapper How to clone objects in NHibernate?