they can make it 5MP in from, even 10MP in front, the trouble is that the front camera is build in for communication reasons, meaning that you are going to be uploading your live 5MP front camera to your contact and your contact will be streaming your live 5MP in order to see you. If you know the size of mb/s of connection speed both side must have in order to effectively be able to see each other front videos, then you will understand that with our actual technologies, no company can afford putting 5MP of camera in front for wireless communications.
You might think that your connection is fast enough, but it's deeper than you think. You are emitting your video in 5MP and uploading it to a server, you need to have a better upload speed, the sever need to be capable of handling your 5MB binaries, your concat iPhone should be able to download the 5MB video forward to him by the server on time, the iPhone should be able to convert the receive binaries into video images on time. The more the video pixel is, the more hard it will be for the server and the iPhone to render send/receive videos data on time in order to have a natural (without intermittent cut off every 2 seconds) video conversation. That's why you will see the back camera is having 5MP and the front is having way less MP, it's all boil down to connectivity and image processing by the server, and uploading/downloading videos speed, do you understand?