How about using a version control system such as git? This is what I am doing and Eagle's .brd and .sch are text based and intuitive and thus version control and diff friendly.
Git could be a good solution, although I need to learn more about it. Tying all the relevant data together would be nice. In my case, I design the mechanics, CNC data, electronics, software, as well as the graphics. Do you think git would work well with the myriad of binary data sources or is it primarily for text code?
You can use it for binary files with no problem, except that you will not have meaningful diff between version.
One tick I am using is also including a PDF print of the designs and using araxis merge for visual diff of the PDF files.
Git is not very intuitive but you need to know only a few commands, status, add, remove, commit, push, etc, and once you get the hang of it it's simple. Github for example provides both public (free) and private (per small fee) repository or you can run your own git server.
Other version control systems are also available and some are more intuitive than git (e.g. perforce) but git is the most common.