Thanks for a #4 solution; it looks another good and simple option for people in my boat. My biggest concern is that it would disallow the use of uppercase ever in the future. i.e. I rename all the currently existing files to be lowercase, then someone comes along and creates a new html file with a mixed case filename, tries to access it via the URL and finds the page doesn't come up, even though the URL looks exactly right.
I'm not sure what you mean by "but if you are linking to files (only)" -- what else might I be linking to? I'm talking about Apache looking at a website that's a bunch of files and directories in an ibay's 'html' directory. Or are you thinking of directories? Yes, they are also likely to be mixed-case and inconsistent as well. Some directories and files are all UPPERCASE, from back in the MS-DOS days of uppercase 8.3 type filename limitations.
The other concern over fixing all our internal links to be case-correct is that doesn't address possibly case-incorrect external links -- people's bookmarks, search engines, etc. that we have no control over. This is a website that has been in existence since the stone ages.

Your suggestion, as well as options 2-3, all of which do basically make the site case-insensitive to the world, would allow those external links to continue working, whereas the "correct" method of fixing our website to conform to a case sensitive web server would not. So while I'd like to fix our links to be correct to clean things up, I think ultimately I would like it to be case-forgiving forever.
So far, the #3 samba solution looks the closest to allowing our website to be case-agnostic without complications like trying to be flexible with spelling (which we don't really want to do), presenting the end user with weird "we found multiple matches, pick one" pages, or forcing our web designers to use lower-case filenames. I just don't know the simplest/best way to get this set up within the framework of the SME Server.
[As an aside: I don't see much point in a file system or a website being case-sensitive, actually. Humans aren't, really, and filenames/URL's are mostly for the benefit of humans (otherwise we'd be accessing files by their sector numbers, ip addresses, and things like that). Would be really nice if a person could set a parameter in Linux (and any other case-sensitive OS or FS) and just make it case insensitive, even nicer if that were the default. But I don't want this thread to turn into a case-sensitive vs case-ignoring debate, so I'll shut up about it.]