Here's some quick advice:
* Start smaller. Your projects are probably too ambitious to start. Graphical games are actually quite complex. Start with small projects and work your way to larger ones. My first projects were chrome extensions and silly command line tools. They helped me build some resilience that I used later to complete more complex projects.
* When you do tackle larger projects, do your best to see them as a series of smaller projects. Each project should deliver some value on its own. I recently built a web game about navigating a randomly generated maze and avoiding monsters. Here's how I broke it up: first I built a command line tool to generate mazes. Then I separated the core functionality into a library. Then I deployed an API wrapping that library. Then I built a simple UI that allowed a user to navigate that maze. Finally, I started adding enemies. Each enemy was its own project, each with more complex path finding than the last. At each step in this process, I had learned something new and had a deliverable to show for it.
* Your question suggests that the problems you are trying to solve are not interesting enough. This belies a beginner mindset: that you have to be interested first, and then work happens off the fuel of your interest. The truth is that most interesting projects involve a lot of days where the creator feels disinterested, but shows up any way. The most important thing you can do for yourself is cultivate the resilience required to keep showing up, so you can reap the satisfaction of completing great work later.