if you are using subreports, go with shared variables, this will allow the subreport and the main report to access them.
declaring a variable is easy, just use it in a formula with a declaration:
shared numbervar nameOfVar;
If you know when your subreport is to print, I would check this condition and suppress the header. Another idea would be to create a second page header section, put in on top of the actual page header. Put your checking and a flag in there. When your subreport is done, have it change the flag so that the page headers come back. You can suppress the second page header section so that no one sees it.
It's an idea. Hope it helps