User selectable "make public" topic option?

No, there are no per-topic permissions that would enable individual topics in a category to be visible to different groups. The only thing which loosely falls into this category is PMs, and they are never public.

Access is set at a category level for good reason. Platforms which allow super granular permissions get super confusing very quickly. I still have nightmares about those permissions panes in vBulletin.