Amazon EC2 isn't simple, it's designed to be high performance and even getting started is a steep learning curve.
The easiest solution to problem 1 would be;
Get your friends to sign up to AWS
Set up a script to automate deployment and configuration of your app, using the AWS API
Get your friends to give you their AWS access credentials so your script could do all the work for them
The 'script' could be as complex/advanced as you need it to be, it could just be a shell script that takes two argument variables (AWS access key and secret key) right up to a full on web app with GUI front-end, it all depends what sort of scale you're talking about (I.E. if it's two or three of your 'friends' I would suggest doing it manually, get them to send you their AWS login and just do it yourself. If it's going to be hundreds/thousands of users you should automate it).
Compared to 1, 2 is quite simple. There are hundreds of payment gateways around, if you set up your deployment script as a web-app you could integrate with PayPal or something similar to collect payments. When it comes to cost, it would probably be easier to run everything from your AWS account and lets users sign up directly with you, pay you and then you pay AWS (Example: Heroku runs on EC2/AWS, but if you're a Heroku user you pay them directly, all the instances run from their account with their frontend/tools). Doing it that way, you could completely eliminate the need for everyone to have their own AWS accounts they could just work directly with you.