Its amazing how many AAA games just simply dump all loaded assets and then reload everything during loading screens, its one of the reasons why some have long load times (though not the only reason).
The main games that don't do this are games with dynamic loading, such as open-world games, but they all have custom written loading systems since they build them specifically for what they are doing.
I'd suggest creating multiple content managers (like Jiagg suggests) and separate what you load into them by what you are using the assets for, something like this:
1) Content you'll never unload until the program ends, e.g. assets for menu screens.
2) Content that won't need to be changed often but will occasionally. e.g. the player character.
3) Content you'll frequently be unloading and reloading. e.g. assets specific to each stage.
You can go further and have more, but you should think about what you want to do with the assets and group them together by what you're doing with them and when you'll want to unload them.
The furthest you could go is having a separate content manager for each and every asset, but that would kinda defeat the point of using the content manager.
Another option would be to look up the source code for the content manager and write your own custom version.