I definitely feel you on getting stuck on a problem and giving up on the whole project because of it, and yes when you finally break through it's very satisfying. I did a similar thing to what you described with a project where I realized the basic player movement was just not that much fun, it was cool in theory but too complex and annoying for what I wanted to create (an easy to pick up arcade game). Instead of reworking it, I just moved on to other projects. Finally after like a year, I had this realization that if I didn't go back to finish my half-completed projects NOW then I would never do it. So I jumped back in to this game and totally changed the way it controls.... then still didn't like it and changed it again and finally am satisfied with it. Funny thing is, the most simple and straightforward method was the one that worked for me. It was definitely a "why didn't I do this in the first place" moment. But hey that's how we learn!