Help me understand how I can collect the data, but not have it displayed on packing slips etc.
There is no way that you can keep the data from displaying on the packing slip. The only information you can remove from the packing slip is the price. You could copy the output from the Packing slip screen and past it into an html editor and then remove the data you don't want and print the page.
Since the fields you created to collect the demographics are custom there probably isn't an existing OrderAPI application that would extract the information you want unless you create it yourself (or have someone do it for you). The data from the order is passed to the Order API script in a name-value pair association. Your application would need to parse the name-value information and save what you need to what ever database you are using.