There's a few different things, I think, that are wrapped up in this.
- Generated UI code is unmaintainable
- Finding (and using) a good cross-platform UI library is hard
- Setting up a new project and packaging for it is hard
To start with the first, yes, generated code can be useful to quickly get something started. After that, in general you'll need to adapt it and grow it be coding from there on. Round-trip (going back to the design tool from code) tends to not work that well.
There's good UI libraries, but cross platform tends to be difficult. Oddly enough, a lot more work has been done to create good cross-platform UI on mobile than for desktop. Interestingly enough, flutter seems to also be bridging that towards desktop. Another ecosystem, another language (dart), but much clearer about how you should build, and plenty of documentation on easily building, from code, user interfaces.
Taking a small step back, I'd like to say that one thing you might want to start with is to look at your current code and try to restructure it in such a way that you separate the core of the functionality from the user interface. This can be a tricky process, and reading up on refactoring techniques is going to be useful. It might also really help in this process of potentially moving to a different language, because it will be so much clearer what you are moving, and what is incidental and just related to the framework you are working in.