When I did this, I used my own method for storing pictures in the database and for retrieving them. All this involved was using AppendChunk and GetChunk.
I had no database speed issues and I never knew there could be until your post. My main reason for doing it in my app was because I wanted to store compressed JPG's and not the full bitmap.
To use a method like mine, you will need to do a little bit of API work and grap some DLL's but to do it in a very basic way, you could do the following:
Save your bitmap to disk as a temporary name.
Read the saved file into a array of Byte
use appendchunk to store this in an OLE Object field in a database.
For retrieving:
use getchunk to retrieve the data into a byte array
save the byte array to disk
load the file into a picture object
It might be worth a test to see if it helps. Perhaps the speed issue is not so much to do with the amount of data in the field but the type. Perhaps binary data is better than a "real" OLE Object for storage..