Hi,
In my experience with Logic, if working on more than a couple of songs over the course of a day, you should take a few minutes and restart your system.
Like you mentioned, over time caches get fill, and the Mac OS isn't actually the best for clearing things out... for example, Take a session, close, open another close, and then quit Logic. If you look at system memory in Activity monitor, you will see a large blue or yellow section in the pie graph. That is data the OX thinks you might need.
I use an app: I free mem. It can restore allot system memory, but it is not always the best way. Restarting your system is.
I suggest to all my tech clients to work this way (every 2 cues, restart) and while you spend the extra time doing this, in the end their system runs better, they have less crashes, and loose way less time and frustration to crashes.