To resolve (some) of your software problems - particularly the "out of memory" and "random" crashes (which are mostly Out of Memory errors poorly handled by the software) - you can.....
a) Download a newer firmware version - using the official Nokia Software Updater PC program. If this program says that no newer version of firmware is available then you can
(b) Download NSS - modify your ROM product code to a non mobile operator specific code (eg. EURO) - and then go back to (a). The Nokia Software Updater should then tell you there is a newer version of the firmware available.
My N95 is on v21.0.016 - and hasn't crashed since I installed this firmware version 3 weeks ago. (It used to crash at least once per day). Camera is more responsive, and SatNav/GPS is quicker/better too.
BTW. I should stress that you will need to take a full backup of your phone - and copy your contacts to your sim. And here's a WARNING: the backup software won't restore the data back on to the phone properly. Why ? Because someone thought it a good idea to restructure where the apps go (which menus/categories they belong to) - and the restore program gets so confused that it hangs at around 59%. Still - the pain of losing some data was worth it to get a much more robust phone.
Paris - because even she would make sure that backup/restore worked between firmware revisions.