So, when I'm done sulking, I build bad prototypes that break and try to iterate on them. There are failures but if you accept them, they are not all that daunting. Don't be ashame of not knowing, be ashamed of not trying.
And yes, breaking it into smaller steps and mapping the unknowns help, but sometimes you don't even know what are the things that you don't know. I'm talking for those situations.