The shell is cracking because you place the eggs in the pot before you put in water. First put some water and then gently place the eggs. Then pour some more water.
Start them in cold water and add 2 teaspoons of vinegar and salt. Boil them gently for 20 minutes, drain the hot water off and then put cold water. Change the water out three times.
if u drop the egg in water the air gap in the egg will be highest part of the egg, make a small pin hole in that end so the expanding air can get out, therefore the egg shell wont crack.