Apparently sending PHP from EC2 is not possible until it gets unlocked by support. To unlock it visit:
EC2 - Fresh PHP install - Mail not working
Otherwise, i will just quote @Charles answer:
This won't directly solve your issue (edit: I mean the error message
you have now edited out), but Amazon EC2 instances have a really
spotty mail reputation. You're probably going to have deliverability
issues.
Thankfully Amazon created the Simple Email Service to go along with
EC2, with a free level of service for EC2 customers. The API is pretty
simple and there are transport adapters for many excellent PHP mailing
libraries, like SwiftMailer (transport).
So - no you can't send, but use Simple Email Service, libraries like SwiftMailer, or I would add services like SendGrid
*Source: Another SO question on php mail & EC2
MEANWHILE:
I signed up for Simple Email Service, which is somewhat what SendGrid is doing. It's was very simple. First you request smtp user and password. You then either confirm an email for testing, or request production access [I didn't need that so I haven't gone through process]. And one caveat - use ssl://
in front of the host, or it will give you SMTP error: 530 5.7.0 Must issue a STARTTLS command first.
error. I was using CakePHP and EC2 when this happened.