В этой ситуации вам необходимо самостоятельно сохранять и восстанавливать объект. Или, скорее, части интересующего вас объекта, либо помещая каждое значение в NSDictionary или сохраняя их отдельно и используя значения для создания нового объекта при декодировании вашего класса.
Эта ситуация немного странная, поскольку обычно вы не создаете и не храните объекты NSEvent. Если вы делаете что-то вроде сохранения последней сенсорной координаты, рассмотрите возможность использования CGPoint. Вы не только уменьшите объем памяти, но и сможете использовать NSValue для сериализации точки.