Оказалось, что в коде была опечатка:
this.NavigationService.Navigate(new Uri("/MainPage.xaml", UriKind.Relative));
Косая черта перед MainPage.xaml исправила исключение, которое я упомянул.
И, конечно,это совсем не помогло перезагрузить страницу, как будто приложение только что запустилось, равно как и навигация и возврат.Очистка данных и обновление пользовательского интерфейса были тривиальными и правильными действиями (MVVM не требовался, хотя это было бы улучшением).
Спасибо ColinE за ссылку и толчок в правильном направлении.