For people who require different APNs for their mobile data and their MMS, there may be a fix for you. I am on a Polish network which requires different APNs and I am able to send MMS and browse the internet. This is what I did:
1. Install the Cydia package "ActivateMMS2G" and reboot
2. Go to help.BenM.at on your iPhone
3. Go to the second Mobileconfigs link, the one that allows you to create a custom Mobileconfig
4. Enter your MMS APN (i.e. mms.plusgsm.pl) for both of the APN fields (Mobile Internet and Visual Voicemail) and enable tether. My network requires no username or password, if yours does, you may need to enter those as well.
5. Press generate, install it, press OK, then reboot RIGHT AWAY. Do not check the settings!!!
6. Go to settings > General and scroll down to profile. If it says 2 (or more) profiles, delete/uninstall the one(s) that are not called "help.benm.at" (i.e. delete all but the one you just installed). If it only says help.benm.at, skip to step 8.
7. After deleting the other profiles, go back to help.BenM.at and repeat steps 3-5. The first time you try to install it, it may fail or hang while installing (it did for me anyway) if this happens, press the home button, reopen Safari, then try again, it should work.
8. Once your iPhone has rebooted, go to Settings > General > Network > Cellular Data Network. Your MMS APN should be present in every APN field.
9. Fill in your MMSC and MMS Proxy. Once again, my network has no username or password, so I am not sure if you should add this here or during step 4... Experiment!!
10. Reboot your iPhone.
11. Open Messages and try to send an MMS. If it fails, check your settings are correct.
12. If it is successful, go back to Cellular Data Network and change your Cellular Data APN to the one appropriate for your network.
13. Test your data connection.
14. Test your MMS.
This fixed it for me. It seems that the MMS APN can only be the APN included in the Mobileconfig, whereas the data APN can be anything. Let me know how it goes.