You want to go 64-bit if at all possible. SQL Server will be able to allocate the extra memory as necessary to all memory pools. There are limits to what it can do in the 32-bit version, even if you configure AWE memory support.
How much memory is really dependent on how much utilization the SQL Server will see. 4 GB is a good starting point and you should measure performance from there to determine if you need more. Keep in mind that SQL Server will expand to take up all the memory that is available as it needs more memory and that it won't let the memory go unless the OS experiences memory pressure. Therefore, don't be alarmed if you see SQL Server taking up a lot of memory. That is normal (and expected with RDBMS platforms).
As to the virtualization question, it depends. Unless there are very heavy loads, virtualization can work with production systems. The key is to not short change SQL Server or the OS because it is virtualized. Allocate it the same amount of processor and memory as if it were on a physical server. Also, make sure you've followed the best practices with respect to disk configuration for the version of ESX you're running.