Yeah, when it re-loads it will just translate the entity name again and revert it. It will require a code change, for now you need to manually edit it each time or use a different string such as '+' or 'and'.
You should be able to save a menu item name or loading parameter that contains special characters such as ampersand's. Essentially it will encode when writing the xml and decode when reading.