ThomasB, I'm also very wary of adding fields, but I think you might have missed a trick in what I said.
The new custom field would only overide the date - if populated. So it would only need to be added / maintained for those albums / tracks needing special handling. So for the vast majority of my music, I'd never have to populate it or worry about maintaining it. Even a lot of my compilation albums are single year, so no aditional work.
One note of explanation though, which might help. My version of MC is configured primarily to work under Theatre View, so I'm using Expressions in the Theater View queries to hide a lot of the complexity. I'm not sure how well this approach would work under normal view.
Based on this conversation, and a bit more thinking, I took another look at my stuff. The biggest issue by far was for various artist compilations. So as a short term fix, I excluded the date from how such albums are grouped under Artist / Albums. Remembering that all this is under Theatre View, I already had an expression for Album in the query. Previously this just used [Year - Album] to group, and [Album] to display. I've now changed this to
if(isequal([album artist], various artists, 1), [album], [year - Album])
This just ignores the year for grouping any album by Various Artists. A quick fix, not requiring any any additional fields, which solved the worst of what I was seeing.
Obviously doesn't fix the single artist compilation artist dilemma, but I'll keep thinking about that one.
Hope this helps.