Okay, part of your problem is that you’re sending the wrong message.
He asked you to the movies, and you said, “I probably have to work, but if I didn’t, I’d go with you.” The message he takes away from that, because he believes what you say, is that you /are/ interested in him, and that he should ask you some other time when you’re not working. Or he should go to things your friends are going to, because you might be there, and as far as he knows you’re interested in him and want to spend time with him—because /that’s what you’re telling him./
This is why, as you note, he’s such a hard person to get rid of—the messages you’re sending him are telling him that /you are interested in him./ So he’s believing that, and he’s trying to put him and you in situations where you can get closer together. You’re not just ignoring him—you’re giving him bad information that he’s acting on as if it was good information.
Put yourself in the reverse situation: if you were interested in a guy, and every time you suggested going out with him, he said, “I’d love to, but I’m working, maybe some other time?” or “I’d love to, but I have a calculus exam the next morning,” you’d most likely focus on the “I’d love to,” and keep trying to find ways to make it work. After a while, you’d probably figure out that the “I’d love to” part was a lie, and then you’d feel like this person had been stringing you along and playing games with you.
If you say, instead, “No thanks, I don’t think it will work,” you’re being honest with him, and he’ll get the message.