I've been there and done that one a few times. Even if you decide to use existing tools, you can easily get caught up in these infinitely-deep pools of complexity.
I am working on a Unity project right now wherein I found myself antagonizing over how to best develop an RTS-style building placement system. Instead of doing what I would typically do (dive right in), I decided that I would rework the game concept to eliminate the need for the player to place buildings at all. After some experimentation, it turned out that this was actually a superior user experience for what I was trying to achieve. I initially rationalized it as "I'll add the building system in the next iteration". It likely won't happen now.
Less is almost always more. That small starting point actually being finished is like nitromethane for the next iteration. Getting to 100% is what makes that next pass so much better. Getting to 80% will leave you feeling like you need to push the rock back up the hill all over again.