Are the form fields bound (they shouldn't be) then there's no need to clear them. That might be the only change you need to make to fix the issue. I have no idea if there is a 'pause' macro action because I don't use macros. Make sure "all actions" is selected in the macro ribbon and check. You could also call a pause function in the macro if need be (would have to be written first), or use report event code to close the form. Then the report would be loaded first. The latter would also enable you to go back to the form if it results in no report records, which is not something you can do with your current macro. Try not clearing the form first.
The more we hear silence, the more we begin to think about our value in this universe.
Paraphrase of Professor Brian Cox.