So, I bought a iomega 1TB external desktop HD for use with my PS3. I formatted it to FAT32 using an online app, which took 17 hours (!) but worked, giving me a usable area of 931GB to play with.
I created the requisite folders (PHOTO, VIDEO, etc) and placed a file in each, including subfolders. I hooked it up, and it all seemed to work fine. The pic was viewable, the music playable, the vid watchable, and all the data in subfolders was accessable.
So I filled up the drive with videos and music, using 500GB in total, with around 450GB of that as video.
Here's the problem...
The music is all accessable. The videos are not. The PS3 recognizes the subfolders in the Video section, but doesn't display them as folders; each icon is instead a generic icon of a film cell, with the circular loading arrows behind it. I can click through the folders to some of the content within, but by no means all of it, plus it takes an age and sometimes freezes for about 20 seconds. Then, when I finally select a video to watch, it doesn't access it, instead waiting at the blank "video loading" screen with the little clock in the top right corner until I get angry and switch it off.
It takes significantly longer for me, as well, when I just press X on the "USB Device (External HDD)" icon. But I find that pressing Triangle and going to "Display All" gets the job done much, much quicker.
That might be a solution. Beyond that, I don't know of any other methods. I have the same issue as you - accessing each folder takes ages, and only displays sub-folders up to a certain depth (I think three folders in is the max).