Preheat the oven to 350°F and lightly spray a 9x13-inch baking dish with nonstick cooking spray. Set aside.
In a medium bowl, whisk together eggs, whole milk, white sugar, vanilla, and cinnamon. Place the cubed bread in a large bowl and pour the egg and milk mixture over the bread. Allow to rest for 10 minutes, stirring once.
Add the diced banana and drained pineapple tidbits to the bread mixture and stir to combine. Pour the mixture into the prepared baking dish. Sprinkle brown sugar and pecans over the top and drizzle with the melted butter.
Bake for 45 to 50 minutes or until the the center is set. You might see liquid in the middle when you check the pudding with a knife, but it should be clear, not milky.
Make the caramel sauce by combining the butter, brown sugar, whipping cream, and salt in a medium saucepan. Cook over medium heat. Bring to a boil and cook for about 3 minutes.
Serve the bread pudding warm with the caramel sauce drizzled over it. It's also great with a big scoop of vanilla ice cream. If the sauce gets too thick, just warm it to thin it out.