Sorry about the problems you're having with your roommate.
To answer your question, if you want to be indirect, you could give him negative feedback (as opposed to positive feedback which will encourage the conversation) when he says things that trigger you. For example:
changing the conversation topic
- you could say, "let's talk about something else" or "I don't want to talk about that" before changing the topic, or just change it without preface
withdrawing from the conversation. You could, as above, give a verbal indication of your displeasure with the topic before retreating to your room, for example, or focusing on something else
These options have worked in my past with dealing with a friend who brings up politically charged topics we disagree on. We're still on good terms and are able to view the situation with a degree of humour. I think trying to keep a lighthearted disposition (even though your emotions may be boiling) helps.
However, I might suggest that the more mature/advanced thing to do would be to bring up the subject directly. This doesn't need to be confrontational if you broach the topic in a comfortable, emotionally relaxed setting, and use "I Statements" to explain that that subject makes you uncomfortable. This is useful if your roommate's social ability may not allow him to pick up on the more subtle cues above.
Direct discussion has worked in the past between my sister and I. Whenever she brought up [thing] I would get uncomfortable, mumble an answer, and change the topic. But she kept bringing it up. When I finally told her that [thing] was triggering to me, she was surprised and said she had no idea, and said she'd try to avoid it in the future. I've had to remind her a few times since, but other than that, she doesn't bring up [thing] anymore.
Finally, I'm not clear on the subject of your indebtedness to him, but don't let that be held over your head. A good friend won't continuously talk about things that bothers you if he knows it.