There are 2 avenues I would try on this:
1) Try deploying the form to a web site and launching new form template to that one. Locally deployed solutions sometimes behave oddly.
2) Trying to launch immediately after close may be failing due to a timing issue? Maybe put time between.
3) Try making your form an installed MSI type form and then launch it using the URN method.
Thanks, Shiraz
Shiraz Cupala / Microsoft InfoPath MVPQdabra® Software / Streamline data gathering to turn process into knowledge