There are ways in which you can call your images using PHP and each time a page is visited a different image is displayed. It's a pain to have to do this but it is possible although it's pointless if you require a specific image to display on a particular page but, even then, you could call the image from a source database via PHP which would make it far more difficult to link to if you set it up properly.
I'm not sure why you need to do this or why you might want to. Bandwidth limitations are all well and good but you must be getting either many thousands of hits per day or your images are vastly over-sized to be feeling it to any great extent.
If you've posted another thread on this, point me in the right direction and I'll look at the problem as you outlined it to see if I can come up with something.
Image theft can be limited but never prevented. There are scripts that can prevent the images from caching in your visitors browser cache which, when coupled with a transparent GIF over the top of every image and right click prevention, helps go a long way to keeping people off your pictures.
You can also limit who gets to actually look at the pages with the full size picture on it by using controlled access so any external linking is stopped dead, but username and password combinations have their own set of problems and are a big turn off to many site visitors.
Let me know what the problem is or where the thread(s) can be found and I'll take a sneaky peaky later on or tomorrow.