For your shy puppy it sounds like he needs some confidence. I'd start him on NILIF immediately. Also leash training and positive reinforcement for everything he does right is in order. It will take some time, but it'll be worth it.