Preheat oven to 350 degrees F. Generously butter a 9x9 inch baking dish. Spread cubed bread evenly in the dish. If bread isn't stale, toast cubes lightly in a 300-degree oven for 10 minutes.
In a large mixing bowl, whisk eggs until frothy. Add milk, sugar, melted butter, vanilla extract, cinnamon, nutmeg, and salt. Whisk until completely smooth and sugar dissolves.
Sprinkle raisins over bread cubes. Pour custard mixture evenly over bread. Press down gently to ensure all pieces are soaked. Let sit for 15 minutes to absorb.
Bake for 45 to 50 minutes until golden brown on top and center is set with a slight jiggle. A knife inserted in the middle should come out mostly clean. If too wet, bake another 5 to 10 minutes.
While pudding bakes, make vanilla sauce. Melt butter in a medium saucepan over medium-low heat. Stir in sugar and heavy cream. Reduce heat to low and cook for 8 to 10 minutes, stirring constantly, until mixture thickens and coats the back of a spoon.
Remove sauce from heat and stir in vanilla extract and salt. Let pudding rest for 10 minutes after baking, then serve warm with vanilla sauce drizzled generously over each portion.