If you want to save the form as a node you have to add all the fields to the node type, because otherwise the database won't have tables to put all the data in.
Then, if the form you have made maps directly to the node type, then there really isn't any need for you to have a custom form, just use the normal node add page.
If you then want things to look or function a bit differently you could form alter the form to tweak things and get them the way you want them.
That is the approach I would recommend (without actually knowing what you are trying to achieve, so I am making assumptions).
The alternative is to stick with your custom form, but also make a custom database table to store all the data and enter the data into that, but then you miss out on all the modules that are already out there that provide extra functionality for nodes, you have to write your own integration with views if you want to use that, etc.
You could also do a custom entity type or use the data module, but the trouble you would go to doing this is pretty similar (or even more so) to what you would have to do if you just set it up as a node type.