Based on my research, I've read that nginx is best and ideal for serving up static files and images. My application depends heavily on uploading of images and rewriting them, then serving them up. Given that I only have one VPS currently, it has been suggested that I use nginx to serve up the images and website, and reverse proxy to Apache (on the same VPS) to rewrite files with image magick and handle the file uploads. Which would be the best solution, Apache, Nginx, or Apache + Nginx? In terms of best solution, I'm looking at minimal average RAM consumption, while maintaining decent load speed of maybe sub 2 seconds?
You're asking a very broad question and there's no single easy answer to it. However, I think there's increasing confusion about the idea of putting Nginx and Apache on the same server because they offer different performance profiles and working together can 'make things better'.
Running Apache (and I presume, PHP) and Nginx will use more memory than just Apache or just Nginx. Nginx will run PHP code through the use of FastCGI, so Nginx + PHP is more memory efficient than Nginx + Apache + PHP (probably). However, Apache + PHP may be potentially just as memory efficient as Nginx + PHP, depending on how you configure it.
Install Apache only, see how it behaves, and if you have issues, consider moving to Nginx only. If that still doesn't work, then consider hybrid installs.