Sumeet the best way to train dogs is using marker training. You can desensetize your pup to the outside world by working what is called below threshold. Let us say that you are the dog and you are scared of snakes , and you will react violently if a snake was 1 foot away from you , you need to stand 30 feet from it and your master needs to give you 100 Rs every time you look at the snake and choose to turn away from it and look at him. Once this happens for say 500 times and you have received 500 x 100 rupees your idea of what a snake means to you will change. not that you will want to pick up the snake and play, but the moment you see the snake you will look at your master and not freak out. Pretty soon you will be hoping for a snake to show up on your walk rather than being anxious about what if it shows up.
This is the principle behind subthreshold desensetization. All my puppies are trained using marker method and you can see them at www.youtube.com/user/rrnsss
There are lots of you tube videos on how to handle dogs with fear. Most important thing is not make him do some thing forcibly.