OK, so here's what I would do.
1. Wrap your subform1 and subform2 in a subform. I'll call it sfMaster.
2. Change your minimum instance for subform1 and 2 to 0 or uncheck the box, and set the initial count to 1. (That way you get at least one of each when we start.)
3. have the buttons create a new instance of sfMaster, then remove the instance of the subform you didn't want within that most recent instance.
So, what the user sees is a new subform1 or 2 each time they hit a button. And they'll appear in whatever order they choose it. The user doesn't have to know that what is actually happening is the creation of a new "master" subform that holds both subform1 and 2.
To help illustrate what I mean, I've added a pink border around sfMaster and colored subform1 and 2.

Binding options for Subform2 (Subform1 would be similar)

What it looks like in action

If you want to guarantee it appears on the next page, you'll need to add the conditional break from earlier. Keep working with it to get the settings just right. You may even want a docReady() event that creates two sfMaster's and sets one to have Subform1 and the other to have Subform2.