A custom header like Paul suggested is exactly what you need in situations like this. There's nothing in Grav to stop you just adding your own headers for your own purposes and using those as needed (e.g. filtering a list) in Twig.
You could simply edit the RSS template to achieve the same thing.
(BTW I'd simplify Paul's template as
{% for child in collection if child.header.hide_from_post_list != true %}
{% include 'partials/blog_item.html.twig' with {'blog':page, 'page':child, 'truncate':true} %}
{% endfor %}
Twig for loops have some cool extras! And I might add child.header.hide_from_post_list is defined and in front of the if to allow you to be lazier.)
Also, there are probably better ways to manage this whole review/release process. Have a look for plugins that let you allow only certain logged in users to see your content. That seems more robust than hoping search engines don't accidentally index your unreleased content. Sorry would suggest but short on time now.