Perhaps, 99,99%, not 100% - additional layer can't improve reliability in perfect (!) world and add some overhead.
But in real world you may get, say 99,98% with Nginx+Apache and 99,5% with Apache just because you will eat lesser RAM with Nginx. Btw, that's why we process static files via Nginx - these files delivery doesn't depend on Apache functionality.
Here is the current list:
css|xml|rss|gif|jpg|jpeg|
js|atom|mml|txt|jad|wml|h tc|png|tif|tiff|wbmp|ico|jng|bmp|svg|pdf
PHP, html, etc. files considered dynamic as they may have directives inside, etc. It may be fine-tuned for specific hosts, especially when you know your site very well.
It depends on your usage. Having dedicated Nginx/HAProxy server is nice idea when you have at least 2 backend servers. Otherwise it has little sense and you better to have Nginx on the same server to speed up internal communications.