The Problem
My coworker is very self deprecating to the point where several of my colleagues are worried about him. He will make negative remarks on the quality of his work, and even himself, saying things like "my work sucks", or "I'm stupid". Additionally, he's taken to complimenting me in a way that is simultaneously self deprecating to him (for example, implying that I will one day replace him).
At first I tried to encourage him not to say these kinds of things, but as time went on, and my (short) patience wore off, I'm just annoyed by him. This sort of behavior is annoying to most of my colleagues, but especially me, as I'm a pretty disagreeable and argumentative person, and this kind of behavior is particularly annoying to me (due to things in my past that are too lengthy for me to get into).
I've had several conflicts with him in the past, where I attempt to confront him about this sort of behavior, but I've failed to handle these confrontations in a productive way.
These confrontations basically play out as me asking him to stop making these sort of jokes, and him saying that it is a problem with the way I perceive the jokes, and not the fact that he is making the jokes in the first place. That's the short of it, but the way these confrontations actually play out involve a lot of frustration from both him and me. I'm at least a little rude during these discussions, and he is very defensive, so we get nowhere.
Although I agree that I'm taking these jokes more poorly than most of my coworkers, I don't agree that these jokes are okay to make. They reduce confidence in him, reduce team morale, and make him difficult to work with.
The question
What is the best way for me to deal with this coworker? I have a lot of difficulty dealing with people I dislike, at least for long periods of time (such as someone I work with every day). The best I've come up with is keeping my interactions with him as short and professional as I can, but I have difficulty doing that without also making it clear that I want to talk to him as little as I possibly can (i.e., I'm worried that I'm still coming off as rude). Is that the best I can hope for, or is there another solution?
Management is aware of the problem, but I'm not sure how much, or what they can actually do.