I agree, you need to get him out in one swift movement – no pre-warning. I tried the pre-warning and giving notice a few times and it never worked, he never left. My final straw was to just wait until he’s out and change the locks.
I also was making him homeless (he’s not from a foreign country though) and I had huge guilt about this, but I had to put it aside and thanks to this forum and other help from Women’s Aid I came to understand that he was not my responsibility, he’s the same age as me and can’t stand on his own two feet – that’s on him and his upbringing, not me.