The two main sites that address file size bloat are Bob Crispen's "Building VRML Worlds: Tweak Scene" web page and the still available VRML97 course "Authoring Compelling Efficient VRML 2.0 Worlds" by David Story, Delle Maxwell and David Marsland.
My personal favorite approach, being the lazy soul that I am, is to reduce the precision of data. Most modelers or translator programs generate data with 8 digits of precision. Which to quote from Bob Crispen "a difference in the third significant digit translates to slightly more than one pixel at 1024x768". A simple perl script to redece this data fat (don't ya just love that term) was provided by James Waldrop and his data fat munger.
Last but not least gzip those files. There is no excuse for not offering gziped (compressed) versions of your worlds. The best way to get the suitable version of your choice is to go to the Jumbo shareware collection and search for gzip. There are over 10 different variations, for PCs and Macs. If you live in the UNIX world you might as well go to the source of gzip the folks at the Free Software Foundation's GNU project, their ftp site has it all.
My treadmill is calling me...