On-demand instances would be the cost-effective option, since it is reliable, has no upfront payment, and can be scaled according to your traffic needs later.
Also using multiple servers located in different availability zones within the same region can ensure uninterrupted operation even if some complications arise in one of the AZ's.
As, you later learn workload patterns, the server instance types and pricing models can be optimized later.
Yes, there are many third party webserver softwares that can be installed manually in the cloud. Some examples are Nginx, Apache Tomcat, Apache HTTP Server, etc.
Yes, you can increase the volume by an additional 5 GB using the Modify Volume option in Actions for volume.
SPOT instances can be used when you already have an app running on a server, and you are expecting to need extra resources for a short amount of time, where the operation is non-critical, i.e it does not lead to failure with or without the spot instance.