Конечно костыли. А что нет? Их задача разрулить косяки архитектуры(убивающиеся активити, кривые asynctask и п.р.). При этом они и на 100% эту задачу не решают, но зато добавляют своих проблем.
Посмотрите на iOS. Есть AppDelegate - посути инстанс приложения, и по ViewController'у на каждый экран. При повороте экрана перестраиваются только вьюшки. Никаких костылей, MVP, RxSwift и прочей отрыжки орхетекторов орхетектуры там нет.
посмотрите в сторону гугловых ViewModel, LiveData и т.п.
Гугл не в состоянии спроектировать и реализовать вменяемую систему, это очевидно любому нормальному разработчику, просто взгляните на андроид. Следовательно они и MVVM нормально не сделают. MVVM - отличная идея, но уж точно не в реализации от гугла.