I just discovered that my Super Cached blog never sent out 304 Not Modified responses for RSS feeds, even though these responses are generated correctly for articles.
After some experimentation, the culprit appears to be WordPress legacy caching. I have WP Super Cache set to PHP caching but feeds use legacy caching nonetheless, and that mode apparently drops Last-Modified headers and won't generate 304 responses.
I excluded all feeds from caching (on the Advanced tab), deleted the existing feed caches (on the Contents tab), and now I once again get correct 304 responses on feeds. Of course the feed transmission itself is slower when actually required, but it's rarely updated so I figure this is a better compromise.
Is there some strong technical reason why feeds can't use PHP caching? Do feeds generate 304 responses with .htaccess caching?