I know that jpegs can produce different file sizes based on what the picture is of. Jpegs don't store all the information for every pixel in a picture. Instead, every pixel that has the same information as another one is referenced. That way, you don't get redundant information stored. I'm oversimplifying this but that's basically how the compression works. So, if you took a picture of, say, a blank white wall, most of the pixels would have the same info, so the file size would be small. But if you took a picture of a Tucan's beak, you would have a lot more info, because each pixel might have a different value and would thus need to be stored.
That being said, I too am disappointed with this camera. My friend has a 3MP camera on his regular samsung slider phone and it takes better pictures. He only paid 30 bucks for his. Maybe we'll get a fix with the next update?