Prince Andrew has been urged to uninvite himself from public-facing Christmas events this year, following revelations of his relationship with an alleged Chinese spy.