First of all, thanks for having me take a look at Safe. A really enthralling read...
Now, to your question:
it seems the object created inside the Safe compartment $mysafe is blessed to a modified version of the module Person, possessing none of the methods of the original person.
To let it have the "method" method, you should allow it into the compartment, with the instruction
$mysafe->share( '&Person::method' );
In short: it's a feature :-)
Best regards
Antonio Bellezza
Update: It seems the reval'd object keeps some reference to the compartment it belonged to. So, even if the "method" method is invoked in the main context, it looks for it in the restricted environment and doesn't find the package altogether.
I'll probably need to read more about perl internals before attempting to understand (not to mention explain) how this all works.