Yeah, I think my biggest problem the whole time was switching around engines too much. I've learned a bunch, read probably hundreds of game dev books (you can see the reviews on my site) but I will use one engine for like 3 months or 6 months and then switch to something else. Even when I was writing my own engine, I started in DX11 (which was what I was talking about) and then later ported that to DX12, and then spent another year writing a whole new engine in Vulkan (which I never even posted about publicly because I was kind of embarrassed at that point). And I've used Unity and Unreal fairly seriously recently and gone on and off with Godot for a little over 2 years (but this time I think I'm sure I'm going to stick with it). So yes, no tool is perfect, but any option you pick is probably good enough, and you should just stick with it. At least to release 1 complete game in a store and then reevaluate your options.
And start with something simple. I got caught up trying to make crazy games when I was inexperienced (even an MMORPG at one point, which failed) and it never works. Unless you are really skilled, and have a team, it's very hard to make AAA quality games. So pick something that is realistic for your current skill level (or maybe slightly above to push yourself, but not crazy) and do that. Everyone has a dream game, but unfortunately many people's dream would take 100's of people and millions of dollars (which I imagine most or all indie developers don't have). You can still make something in the spirit of what you want, but make it simpler. It doesn't have to be 60 hours long (you'll be lucky to make a 10 hour game). Maybe just have 1 main character and drop all the classes or customization. If you want an open world, just make one area of a city. Or make a couple areas but not a whole GTA game. Look at the latest Deus Ex game. They made a convincing world with great graphics, but you are limited to small hub cities, and you travel via a subway with no animation. So it still feels like a world, but you can't drive cars, there are limited NPCs, the hubs are small and they block off some areas with police, etc. But it still looks great and is convincing.
Also, start as simple as possible. I know I was talking about a dream game, but if you haven't made games before, don't start with that. Make PONG. I've made PONG in like 10 or 15 different engines or platforms (PC, mobile, Xbox, etc.). When I try a new engine (after making the spinning cube, I love spinning cubes) I always make PONG. Because it's easy to code, the graphics are dirt simple, and you can write it in less than a week, even in a new language. But it teaches you so much about the engine, displaying text, moving sprites, sound, AI, collision detection, changing scenes, input handling, basics of logic and programming. Really all the fundamentals. So this is a great first project for anyone (novice or experienced).