Proper way to maximize reuse of assets within scenes
It looks linking is what you want, you will have to use the link option. You can find this under File→Link. Although it sounds as though you already pondered this method. After some quick testing it does seem that all the mesh and material data is transferred.
For advise on keeping all the objects organized, keep all the objects you want referenced in a library file and just link from that to keep from going through all the objects you don't need to reference. Also, name your objects properly. Navigating through the .blend structure is easy when you know which folder you need to go to. For whole objects, after you select File→Link, go to your library blend file and select Object→'Objectname'.
Use Alt+D to duplicate the linked object in your level files if you don't want to get another linked object. If you use Shift+D, only the material will update in my experience.