I am not a big fan of Reddit - to be honest I don't use it, nor do I really understand or give much thought to it.
But, it's a site that, while it was created and developed by a certain group of people, it has been built by the community - by their participation and links and their content.
Thus it will always be tricky to try and exert too much control over it. You can do it, of course, but to maintain the site and keep the contributors and visitors happy requires a delicate balance.
What they need to do is create a clear code of conduct and terms of use and then stick to them. If that results in people jumping ship then that's what happens. If they want to prevent certain types of discussions from being on the site then that's their prerogative, but that's not without consequences.
If it was me, I would simply leave it that illegal content is not allowed but any discussion may be had in a user-created sub-reddit. Simple. The guide for users and visitors is obvious: you can create a section to discuss whatever you want, however you want and can ban users from contributing if you like. But you do not get to complain about what someone else says in their own area, no matter how 'reprehensible' you consider it.
If reddit are not going to allow unfettered (legal) free speech then they should provide clear instructions on exactly what is allowed and what is not. They don't have to do that, of course, but if they start taking down things based on their own discretion then soon enough people will stop posting controversial topics and will go elsewhere to do so.
If that's what they want then fine, but they need to be clear about it.