Have you already try to use the Asset Importer Library - FBX import feature? I haven't used it now but a lot of your requested features shpuld be already supported by it. And you can use our viewer to verify your models.
I started a implement a FE-solver + UI in c++ as my first c++ project ( 2001 with MFC, not the best choise as a first project I have to say ).
So I had a target, motivation and a hard timeline. Then I looked into the concepts provided by c++ which seem to be the best approach and played around with it until it worked.
In my experience it is much easier to learn a new language with a real project than just reading a book. You can transfer the stuff you read into a real solution which solves a real problem. And you can lear how the toolchain works.
If you want to design some kind of a UI with buisness logic OOP is common I would say. If you have to adress realtime algorithms which are also cache-optimized OOP will not win. Here you need to think near to your HW and OOP is not the best choise.
And keep in mind to separate the UI-View-Logic like Clicked-State-Rendering from the game-logic like fireing an event into your game-application. You can declare a bundle of trigegrs to start an action like starting a new game from the view-state-handling in your ui-code and this make it much more mantable if you want to rework your ui-elements.