Make the crust: Line a loaf pan with baking paper. Blitz the graham crackers in a food processor, then add melted butter and process until combined. Pour into the lined pan and use the back of a spoon to press it down smoothly and firmly. Place in the fridge to chill.
Make the cheesecake filling: Preheat the oven to 375 degrees.
In a large mixing bowl, add cream cheese, sour cream, eggs, egg yolks and brown sugar. Use an electric mixer to blend it all together. Pour it on top of the crust and cover pan with foil. Place the cheesecake pan into a larger pan, and place it in the oven. Pour boiling water into the larger pan to act as a water bath. Bake for 1 hour and 45 minutes until just set. Allow to cool before putting in the fridge overnight.
Make the caramel layer: Line another loaf pan with parchment paper.
In a saucepan over medium heat, add the butter and sugar and stir until the sugar has melted. Add the condensed milk and bring to a boil, stirring constantly, for 3 minutes. Pour mixture into the lined pan. Allow to cool before placing it in the fridge for 3 hours, or overnight.
Assemble the cheesecake: Gently tip the cheesecake out of its pan, then turn it right side up onto a serving plate. Turn the caramel layer out on top, and peel away the parchment paper.
Place the milk chocolate in a large mixing bowl. Bring the cream to a gentle simmer then pour it over the chocolate and whisk until smooth. Pour it over the cheesecake, and use a small palette knife to smooth it over the top and sides. Place in fridge to set for 2 hours, then use a hot knife to slice and serve.