You have a couple of options, ones better than the others. As few have mentioned before me, the easiest option is:
1. initial .html page -> .php page -> final .html page
If that is all your php code, you can use header redirect after that and user will hardly notice they visited .php page.
2. initial .html page -> .php page
You can actually add all your content to the .php page. That way you are down to two pages. Just put that php call at the very top (it will send the mail) and continue outputting the html. Of course, the downside is that mail will be sent every time person reloads or visits that page from another source. You might validate that through referral, though that is not a reliable method.
3. initial .html -> .html page with an invisible (or marginally small) iframe that has the .php page in it.
This would be the closest to what you are looking for though it looks like some kind of virus application -- something goes on in the background you're not aware of. This solution has the same problems as the second, with mail being constantly sent.
All that said, the first option is still recommended.