If you are now getting the emails but only sporadically it would indicate that you settings and the UE code are working as they should. It could be possible that the addresses you are testing with might be a part of the problem, to eliminate this possibility you should make sure to test the same addresses with both the working and not working one. You can also test the emails that are being used in the sporadic one with the UE server behavior that is working consistently. This should let you know if there is a problem with the email addresses being used.
Another thing you could try would be to hard code a value for the email address and test with it like this. Maybe the page is not posting the email address value consistently.
Please try these things out and let us know. In the end of the process UE is calling the PHP mail() function. So long as it is getting to this point the UE code is working as it should.