I wonder if this idea got any further forward? I agree that the idea of using a profile to define what fields get included in the export is a good one as it puts the user in control. I'm working with a client who uses Xero for their accounts, and Xero has provision for a couple of tracking category fields, so it would be great to simply add these in to Civi as custom fields for contributions, and then ensure that they get exported in the batch data. But making this happen looks to be really complex.
If the fields already included in the export are not exposed to the profile system, then maybe just think about using a profile to add additional fields? Not ideal, but perhaps simpler to implement.