While the incremental update feature was added partially to help issues like this, I understand it doesn’t fully solve the issue. Perhaps it could be useful to you if you haven’t tried it yet.
I’ve never used Spacewalk before, and Foreman+Katello was my first introduction into system management tools. It sounds great that Spacewalk automatically updates packages. Katello sync plans can help you get closer to this, but it gets trickier for automatically publishing content views. You would need to set it up yourself with some combination of hammer and cron probably. An older thread exists where a user voiced very similar concerns Update management with Katello 3.5
If you don’t need to filter any packages (definitely a big “if”!), you could have your hosts assigned to the Library lifecycle environment and the default content view. If you had a sync plan set up for the hosts’ repositories, the available packages would always be up to date.
On the subject of automation, it would be worth checking out Foreman Ansible Modules if you’re interested in Ansible at all.
It would be interesting to have an automated way to keep content views up to date. Something like a content view publish plan could perhaps meet the requirement and keep the code simple. Or, perhaps a content view setting where CV publishes happen automatically if related repositories are re-synced. Just food for thought.