FWIW, using MVC is not as flexible as the WordPress hook system. I would leave in a heartbeat if it ever changed to MVC.
The REST API is redundant code.
The Customizer has a lot of redundant code and is slow because of so much JS.
By the way, the build system has changed since the fork of CP.
I think there is an inconsistency in the filters. Some are applied before the logic of the function, but a truthy value just returns it, and others are applied after the logic, passing the finished result. Either way, the logic often has to be duplicated to get the right filtered effect. I think more filters should be within the logic so it’s easier to modify.
I don’t mind mixing PHP and HTML, since that’s the true use of PHP. Even mixing PHP and JS is fine on occasion, but it is rare. PHP and CSS makes sense for theme options, but not for core.
PHP really is a filter language, and using classes only makes sense when there is state to maintain for the duration of the page request, such as WP_Query.
I don’t like how there is a config variable to use themes or not, and if you turn it off, you get no output at all.
I don’t like how the admin needs to do a lot of similar things as the front end, but the admin code isn’t really available to use.
I don’t like how the code grows and grows. Deprecated functions are rarely removed. There are some things that are too slow.
I don’t like how the focus is always on adding more features instead of fixing all the bugs.