First, to address the specific questions/issues raised.
1- I think the hardware is sufficient, although it is hard to extrapolate a load from the question. I would get the best server I can afford.
2- Yes, get a second (identical) drive for RAID1; I would buy it with the server. How it works depends on the RAID controller; most likely there is a program you run in the BIOS to manage it.
--> Note to all: Let's not start the religious war about RAID. The OP said RAID1 and the on-board controller supports it.
3- I would up the memory to 4GB, and I would do if in such a way that more can be added easily.
Second, additional thoughts.
a- You will very likely have trouble with the software configuration you mention. Exchange does not like to share a server with other applications.
- If the reason for Exchange is to allow the web sites to send mail, there is an SMTP service built into IIS for just this purpose.
- If you need to actually run mail service, I recommend you do it on a separate server. If cost is an issue, use something other than Exchange .. several other options mentioned here.
- SQL Server and IIS play fine together; Exchange should be on it's own server. Separate virtual on same hardware is fine.
b- There is a lot involved in setting up IIS and SQL Server in a "hosting" configuration. If you don't know how to do it, get help.
c- Don't forget backup (and testing of the recovery). You need to be able to recover the sites in a reasonable amount of time if the server fails. My take on backup is here. It includes links to other questions that discuss options for backing up a Windows server. Running the server in a VM and saving the VM is one good option, although it can get hairy if the Windows/IIS/SQL install goes bad.
d- If by "windows name server" you mean an Active Directory domain controller, this should also be on a separate server/VM. I believe it is required for Exchange. If you mean running DNS, can do on the SQL/IIS system.