It sounds as if you doing all the right things, it just takes time. How much time? Well, that's like asking how long is a piece of string because there is no wrong or right answer. It will take as long as it needs to for your paticular puppy. I know that's not a lot of help!! Just remember that consistency is the key to everything.
I would add that when he bites you, that you try and let out a high pitched scream or yelp to show that you are hurt. The other thing I might suggest is that you remove the rug that he has chosen to pee on. Doesn't matter how well you clean it he will always be able to get a slight scent from it so you might want to keep that up until he has improved on his potty habits a bit more.