Optimize your queries to use the disk as little as possible. Databases are governed to a large degree by disk access and what is in cache. By tuning your queries as much as possible, including adding indexes and normalizing the database, you will reduce your resource hit.
People forget that these machines are running in virtualized environments. There is a broker between your VM and access to physical disk. The fewer opportunities this broker has to add a microsecond here and a microsecond there the better off your performance will be. It is entirely possible that your application could be running extremely well on a physical host, but as soon as you move it to this virtualized model you experience performance issues. The efficiencies of the promiscuous use of the host masked any inefficiencies in the application design and query design. Finding these inefficiencies when moving to a virtual model, particularly one where your whole database system is virtualized, happens quite often.
You will experience side financial benefits from your query optimization and database normalization. AWS is a utlity computing environment. You pay for each access to a resource. The fewer times you need to go to disk the more dollars you will save each and every month.
I would also consider physical hosting for your SQL Server instance if the database cannot be modified/normalized or have indexes added. This will fix your cost model for your database instance and improve the performance because now you will have access to one dedicated host for your DB. You will likely have to pay for the bytes in/out between AWS and a physical hosting provider for your DB. You may have other options with vendors that supply both virtual and physical hosting, such as Rackspace, where you wouldn't get hit with the bytes in/out of the provider cloud.