There is an alternative for event tag types. Define separately-named custom tag types and then exclude these separate tag types from your report. For example, define a tag type in the Marriage group, possibly named "Marriage Sensitive". Then when you choose to produce a report you can Select which tag types are included and simply not include the sensitive tag types. When the report runs, there is no marriage. But depending upon the report that may not keep the "sensitive" children or parents from appearing.
To exclude people I find the best way is using Flags. You could have a Flag named SENS, which you set to Y for those people you wish to exclude from some reports. Now you can filter the people who are subjects of the report based on the Flag which, depending upon the report, may give you what you want.
Finally the most certain but brute force way is to use the List of People report filtered by this Flag, and use its Secondary Output to create a temporary separate Project of all people who do not have this Flag set to Y. In that temporary Project any sensitive children or parents no longer exist so will not have a relationship tag to the parent or child. You can run whatever reports you wish because these people are now not in this Project. However you may still need to "deselect" custom "Sens" event tag types as mentioned above. Otherwise you could still have, for example, a Marriage to what is now an "unknown" person, or a Witness reference to an "unknown person". When done with running the sensitive reports simply delete this temporary Project, and continue to do all your data entry and editing in the main Project which has all people.
Hope this gives you ideas,