For limiting the source addresses, a firewall like iptables will do the needful. This manual whitelisting can be a problem with dynamic public IP Addresses changing frequently (can be a case with cloud).
Load Balancer is more of a transparent reverse proxy with different sort of algorithms like Round Robin, Least Connection method, etc. more focussed on distributing load. Now a days Load Balancers are offering even security features as components which can be on the same box.
Reverse Proxy is a very light-weight component which does redirection based on port or url. As the connection gets terminated at proxy, it provides basic protection against attacks and prevent fingerprinting. You can look into this question to have a better understanding. http://security.stackexchange.com/questions/104549/reverse-proxy-or-direct/Reverse Proxy or direct?