I believe most people doing creative work will get new ideas as they are creating their work. Rather than finish the current project, they move on to the new idea. If you want to get your projects completed, resist the urge to start a project in the middle of your current one. Even though you are making your games just as a hobby, you should try and set goals and deadlines for your project, just to keep it on track. You may also find a new library during the development of your game. "Whoa! This library is cross-platform AND has a built in physics engine!" Despite how amazing this library may seem, keep working with your current tools until the end of the project.
But sometimes you just need a break from that project right?
I have learned form doing Ludum Dare a few times, that sometimes a small side project can help you grow a little bit, and even keep you focused on that "big project".
So, if you honestly are getting really tired of working on the "big project", make a little mini game or website (preferably something that wont take more than 2 or 3 days).