1) Anything is conceivable, but it's a seriously bad sign if that actually happened spontaneously.
But is there a pattern to which pictures disappeared and which did not? For example, those on a removable card remained, those on internal storage were lost? Or any particular folders survived? And did you lose all of your apps at the same time (the ones you installed, not the ones that came with it), have to re-enter your GMail credentials, and have all settings revert to default? If it was a factory reset then all of that would have happened too - if not then it was something else (not sure what, knowing the pattern of what was lost and what was not might help identify it).
2) Pictures on a removable card should be easily recoverable if they were lost. The main thing is not to use the card in the meanwhile (to avoid overwriting data). If the phone does not mount it as USB mass storage (which with 4.0.4. it probably does not) then take it out and put it in a card reader attached to a computer (quite cheap if you haven't got one), then run any old file recovery software on it.
Pictures on the device's internal storage (including the "emulated sd card", /sdcard) are probably lost. There are programs that claim to be able to recover them, but I've not seen a post from a real user (as opposed to someone working for the software vendor) report success with them.
The problem is that in Android 4 Google changed the way the phone mounts its storage on a computer. Back in the 2.x days it would mount the card as a USB mass storage device (like a flash drive), which would allow file recovery software to work. But with 4.x Google changed this to use MTP (Microsoft's Media Transfer Protocol). That has the advantage that you can still view the card on the phone while it is mounted on the computer, but it also means that the computer doesn't get the low-level access to the filesystem that it needs for data recovery software to work. That's why I suggested a card reader for a removable card, since that would let you mount the SD card as a UMS device. However, that doesn't work for the internal storage, since that is soldered to the motherboard, so there's not much you can do about that.