Is it possible to make this hide titles for certain roles?
You can do that with a CSS rule. Each role title has its own class you can target.
I need them completely hidden, not even visible in view source. (And yes I know the profile shows them, I'm prepared to disable the ability to view profiles if I have to in order to hide that.)
Edit: I'm migrating forums for a gaming group for a game where "playing the metagame" (ie, spying on other groups) is expected, if not actively encouraged, so there are operational security concerns that wouldn't exist in a lot of installations.
Vanilla 2.2 includes the ability to mark a role as "Personal Info" for which there is a new permission. You might try looking at the master branch on GitHub and see if it's worth using a non-official version to get that. The next official version (2.3) will include it, but there is no ETA for its release yet.
I'm not recommending a core change, but if one were to do it, they might comment out this line
or possibly change the line to
$this->Roles = array();
to make the Roles: say no roles.
or you could write a plugin to re-do module I suppose.
I may not provide the completed solution you might desire, but I do try to provide honest suggestions to help you solve your issue.
I might try my luck with master. (I do need to actually display SOME of the roles in the user meta on their posts though. so this is going to be interesting.)