All righty! I see what is going on. :)
So - the thing is, InfoPath is NOT going to save data to that XML file when you submit the form. Your "Header" XML file is stored in the form template as a resource, and every time that data connection is queried, it will return the values in the XML file. InfoPath is not going to permanently store that info.
You are using defaults in your main data source fields - so when the form re-opens, the XML file query runs, and then these fields are set back to blank....Here is what I would do. Change your main data source fields to NOT have defaults. On the "Submit" button, add rules to set your main data source fields to the values currently stored in the XML files. Your submit button is outside of the repeating group, so rules on it that set your main data source fields will set all instances.