by Rex Lorenzo.
Where are you seeing that Moodle stores binary data (e.g. images) as blobs? I haven't seen that in practice.
What is the possible bottleneck is that every image on Moodle is served by the /pluginfile.php. It does a lot of processing to find out what part of Moodle is serving the file, calls that part's lib.php's "*_pluginfile" function to do access control.
This happens for every module icons and editing icons as well. A nice performance optimization might be to use CSS sprites (http://friendlybit.com/css/spriteme-combine-images-and-get-fewer-http-requests/) to reduce HTTP calls. However, I believe that Moodle tries to set the appropiate cache headers so that a browser should only really request an icon once during a session.