I think crate training is the best way to go. I got Fiona when she was about 3.5 months old, and the only 2 accidents she had, she did on the tiled floor!
The best thing for you to do, in my opion, is obviously if your pup is in the crate at night, as soon as you let him out in the am, go outside. You can come up with a command word to help him go potty on command. I would make sure that the word you come up with everyone uses in the house and you gotta be consistant. When your pup is actually doing the act thats when you say your command. In my case, when Fiona would urinate, I would say " Good Pee Pee" and "good poopy" You have to do it while they are in the act, not before, not after, and when they do it praise them, use a high pitch voice, treats, anything so they know they did a good job. If your out there for like 20 min and they do one over the other, put him back in the crate for 15 min, and try it again.
Good Luck!!!!