Chardonnay was horrible to train. She understood the idea of not going in the crate but not going outside the crate seemed to be way beyond her grasp. It took about an extra year to get her to understand "house" training. Granted, I did get her from a shelter when she was six months old and I didn't get to start from scratch.
However, on my other dog (A black lab/german shepherd mix), crate training was near perfect. I can't even remember if he had an accident in the house. Of course, I never left him in the crate for all day, usually we'd leave him in the backyard during the day or when he was really small, in the bathroom or so and then practice crate training at night. Like, literally getting up to let him out every two-three hours at night. It was easier just because no one was home during the day but he HAD to be trained.
I agree with not letting them have free roam of the house. I feel like, if you can't see them then it's too far because Chardonnay used to pee in shadowed/dark places (I think she used to be punished because she also has an extreme fear of my roommate who punishes her dog by putting its nose in it). Also, I used to reward her for peeing and pooing outside with, of course, special treats that she only gets when she goes outside. I basically ignore inside mistakes unless I see them happening. As for extending the time that he holds it, I would stop taking him outside every hour and start with every two hours and possibly let him play outside the crate for an hour and then put him up for the second, that way he has no chance to accident before his two hours are up and then he also isn't living in his crate.
I think the most important thing for my dog was rewarding when she went in the right place. I lavished her with lovings every time she went outside and even though she stopped taking the treats a long time ago, I still say "Good Girl" everytime she goes outside and she is still absolutely pleased with herself.
My babes: Chardonnay B/T Female(or "Puppy" Spring 2007); RCF's Vin du noir et blanc TRI Male(or "Titus" March 18, 2009)