It is tricky; but even with different headers/footers you can still put everything in the page header/page footer of your main report. Here's the basic concept of how this works.
PageHeader
text1 text2 text3
text4 text5 text6
For subreport#1 you only want to print text1, 2 & 3 ... for subreport#2 you only want text4, 5 & 6
Before printing subreport#1, run a function that sets the visible property for text1, 2 & 3 to true and text4,5 & 6 to false. That way, even though all of the fields are actually in the page header, you only print the fields you actually need for the particular subreport.
Before each of your subreports, you would run a similar function that turns on and off visibility for the appropriate fields.