Well I live in sunny South Africa so I dont have the cold problem - even in winter our temperatures dont go below 10 degrees celcuis. My dogs both sleep outside at night now in summer and in winter we have the issue of pottying inside! (I fuss overthem and like them inside because I know they feel the cold! I cant imagine them surviving in snow!)
Given the chance they will still do their thing inside if they can - even when the door is wide open...they dont like getting their feet wet in the rain! We get a lot of rain now in Summer!
My second pup was a problem child though. The breeder kept him inside and they were confined to an area with sponge on the bottom so he insisted on only doing his business on something soft. Once i figured out why he was doing this I could solve the problem. He would only pee on the carpets, bathmats, even the couch or bed if he was desperate enough! He would pee in his own bed daily and then find something else to sleep on!!! he would even go and pee in my females bed and then lcimb back into his own! So i limited his access to these things. I picked up all the rugs, kept all bedroom doors shut (which means they know this is off limits now as adults) and made sure his paper or pads were outside. He soon learned!
When they did stay inside I would put a nappy on her and a belly band on him - I have only had to do this once or twice and they have learned to hold their bladders! They hate peeing on themselves you see!
And yes, they do have accidents at times but when im home they will go outside voluntarily.
You need to be consistent too. I have never crate trained but i did notice you said "I crate train and feed him at certian times"...if that's your solution then you must do it all the time to teach him. otherwise he will just be confused.
One thing they have taught me is to be patient- very difficult! And be firm but kind at all times. Let him know when he has done something wrong but dont punish him. and reward him when he does it right! When he goes outside, treat and praise him for being a good boy! EVERY time! Also use the same word over and over again when telling him to go potty - eventually they learn it almost like a command, followed by a treat
Good luck! This is an international Yorkie problem! You are not alone!