Many people have problems house training small dogs, so you are not alone at all. I recommend crate training. It really does work and for this size dog, the crate will not take up much room. Below you will find the way I crate train dogs, which has worked consistently for 15 years. If you have other dogs you will need to separate them when taking them out to go to the bathroom, as they will want to play rather than potty.
I would also always take your dog outside on a leash. An unleased dog can run into the street and get hit by a car, or get into a fight with another dog and be seriously injured. Do this even if you have a fenced yard. No playing with your puppy during potty time either.
During crate training, you will be having your dog confined either in a crate or confined to a very small area which optimally will only allow the dog room to lay down in. Dogs will generally not soil an area where they sleep.
When you feed or give your dog water, take the dog immediately outside to go to the bathroom. Also take the dog out first thing in the morning, last thing at night and after extended play times and when they wake up after a nap. Take your dog to an area where you want your dog to go and preferably one that has been used previously. Allow your dog approximately 10-15 minutes to go to the bathroom. If your dog doesn't produce, take your dog inside and cage them again. If your dog does produce results allow her some uncrated time as a reward before crating or containing the dog again.
If your dog didn't go to the bathroom, take your dog out again about 30 minutes later and repeat this until your dog goes. Praise your dog profusely when your dog succeeds and is on the leash. This will teach your dog that it needs to go when you take your dog out and not play around first.
Some dogs learn quicker than others do, but once you have your dog going when it is on the leash and each time you take your dog out, you should be able to stop containing your dog. It is a lot of work, but pays off in the long run. Remember no playing or praise until your dog succeeds in going outside on a leash.
The key is no time outside of the crate unless you can have your eye on them constantly to pick them up and take them out if you see the classic sign of impending bowel movement or urination. Also, scolding a dog for going in the house does no good unless you catch them in the act. If you do catch them, a firm NO and trip outside should be done.
Perhaps there is a way of having the crate right at the doggie door which will allow him to come in and out but just to the crate, though this may cause problems if your female uses the door as well.
Remember to clean any area inside they have gone with a good pet deodorizing cleaner. Cleaning the carpets with anything other than a high quality enzymatic cleaner fails to remove the odor. The dog can still smell the odor. Additionally, the urine soaks down into the padding where it is very difficult to get to and thus the dog still can smell the urine odor and goes back to the area to urinate again. You can read what one cleaning company has to say about the problem here:
Here is a site that also goes over the subject.
So it is possible the urine smell is still down in the padding of the carpet and thus attracts the dog back to the area.
I know this is very frustration for you and hope these suggestion help.