I need subcategory posts from not showing when viewing categories, so far I have not found a plugin that fixes this problem for me.
I did find a trick that can be done at the theme files.
Create a category.php file for the theme in use and possibly copy the code in index.php
Anyway just inside the loop, put this code before the post is written to the screen
if (in_category($cat)){

and close it just after the post has finished outputting.
If its not clear leave a comment and I will tell you how to do it.
Each template does the post outputing slightly different so there will be many variations in how this works.
The ideal situation will be to not have the subcategory post pulled from the database in the first place, but for now this is how it will work.

“Don’t Show Posts of Children Categories”
Remove Subcategory posts