Would it be possible to combine this functionality with the sleep/awaken mechanism so that by default a contract that gets deleted can be recreated with the same merke proof that
claimReceipt
uses?
Yep! See Cross-shard receipt and hibernation/waking anti-double-spending