1. For the coconut bread pudding: Position an oven rack in the center of the oven and preheat to 350 degrees F. Evenly coat the inside of a 13- by 9- by 2-inch baking dish with the butter.
2. Divide the bread cubes between 2 baking sheets and bake until just starting to brown lightly, 10 to 12 minutes. Set aside to cool.
3. Whisk together the coconut milk, whole milk, sugar, kosher salt and eggs in a large mixing bowl. Add the cooled bread cubes and 1 cup of the shredded coconut and stir to combine. Pour the mixture into the baking dish, lightly pressing down with a wooden spoon or spatula so that it is evenly flat. Cover with plastic wrap and allow to sit at room temperature for 30 minutes.
4. Remove the plastic wrap and place the baking dish in a larger roasting pan. Carefully pour hot water into the roasting pan until it comes one-quarter of the way up the sides of the baking dish. Make sure that no water gets onto the bread pudding. Bake until the center is set and the top is light golden brown, about 1 hour. Remove from the oven and let rest in the roasting pan for 30 minutes.
5. For the caramel rum sauce: While the bread pudding is resting, combine the sugar and 1/4 cup of hot water in a medium saucepan and cook over medium-high heat until the sugar has dissolved, 1 to 2 minutes. Continue to cook until the mixture has thickened and turned a rich amber color, 4 to 6 additional minutes, swirling the pan occasionally but never stirring. Remove from the heat and add the coconut milk and salt. Return the pan to medium heat and stir with a wooden spoon until the caramel has thickened and coats the back of the spoon, 6 to 8 minutes. Turn off the heat and stir in the dark rum and butter.
6. Remove the baking dish with the bread pudding from the roasting pan. Top with the remaining 1/2 cup toasted coconut.
7. To serve, spoon the bread pudding into individual plates or bowls and top with a generous helping of caramel rum sauce.