I think you know what you need to do, your finances notwithstanding.....

But to spell it out: Get a new roommate if you have to, but tell him he needs to leave. Give him a firm date by which he needs to do that. Do not negotiate. This is his problem to solve.

I would also suggest that you refuse the gifts. I know that may sound harsh, but drawing boundaries for people who refuse to draw their own is usually difficult. IME, you sometimes have to make a point of drawing them or they otherwise just don't get it. In my further experience, what you do matters a lot more than what you say with this type of person.

I have a friend (well, now former friend) who has gotten back together with someone no less than six times over the course of their relationship. Each time, he ups the ante of what he'll do in order to get her back. It's such an unhealthy dynamic, in part because she refuses to see how manipulative he is. From my perspective, your ex's gifts to you were not "thoughtful;" they were manipulative. The sooner you see your ex's actions through that lens, the sooner you'll be able to make the break yourself. Of course, that's just my opinion, so take it for what it's worth.

Good luck.