PrivateInternetAccess is widely recommended as a VPN. However, for location-based restrictions where data privacy is not a concern, such as streaming MLB.tv, I believe a smartDNS solution is better.
No point in sending the MLB.tv streaming data halfway around the world and using processing power to encrypt and decrypt it. Those just decrease speed. smartDNS makes it appear to the server like you're somewhere else, but still maintains a direct connection, thereby maintaining regular internet speed.
Unotelly sells both a smartDNS and VPN services packaged together, and they specifically advertise as supporting MLB.tv unblocking. This way, you can use VPN where you need data security, and use smartDNS where there is a location restriction.
Full disclaimer: I'm not actually a customer of either service, I learned this information from lots of research in this area.