The problem you're trying to solve is called NAT traversal, where you're trying to communicate with another device while using carrier-grade NAT.
Potentially, you could proxy all of your packets through a server, using a protocol like SOCKS. This probably won't scale exceptionally well, but if you don't plan to have too many clients, it's probably acceptable. You will, of course, have to pay for or run a server outside your network (not inside a NAT), which may be slightly complex/inconvenient.
Alternatively, you could punch a hole through the router and communicate between your two intended clients directly. According to Wikipedia, "VoIP products, online gaming applications, and P2P networking software all use hole punching." If your use case is similar to that, it may be worth considering.
You may also find this question on Super User relevant, with an answer by spacecrab:
Yes, option: purchase access with a VPN service that allows for a static IP and port forwarding, you will be able to have clients talk directly to your device(s) as you'd expect.
Option two: Find a deal on a VPS (Virtual Private Server) and configure a popular VPN software like OpenVPN yourself. End result is the same, configuration part is much more in-depth. Good learning experience if you're trying to find a reason to spend an afternoon educating yourself on light networking.