Place a gun down next to his food bowl when you feed him. If he won't step over the gun to eat pick up his bowl and try it the next day. After a couple of days he will be hungry enough to eat next to the gun. After he begins to be comfortable with the sight of the gun start handling the gun as you give him his food. If he balks pick up the food, keep withholding food until he eats while you handle the gun. Progress to working the action after placing the bowl in front of him. When he is completely comfortable with the gun around food, progress to fetch, going through the steps as you did the food.
This will take alot of time to do right. DO NOT try and test him by firing the gun.
As for as fetching he should have a dedicate fetch object/Bumper. Only give him a couple of retrieves at a time and put up the bumper with him wanting more. Quit throwing sticks. Work the action around him before going for rides and other times when he is excited. When he is completely comfortable with you working the action of your shotgun around him in any situation, you may begin conditioning him to the sound of the shot. Use a helper to fire the gun at 200 yards while you throw his bumper. Your helper should fire the gun while he is running toward the bumper. If you notice him hesitating on the shot, stop for the day. Move your helper farther away next time and have him shoot away from you. You need to be extra cautious since you are conditioning him to overcome a bad association with guns. This procedure may takes months. His strong desire to retrieve will be the drive you need to make him overcome his fear of guns. It will be alot of work and there are no shortcuts. Use a shotgun, rifles have a sharper and scary crack to most dogs.
Good luck, looking forward to hearing how he progresses and which approach you choose.