How to Make It
Beat cream cheese and brown sugar with a stand mixer fitted with a paddle attachment on medium speed until smooth and creamy, about 1 minute. Beat in vanilla and salt until incorporated, about 15 seconds. Add eggs 1 at a time, beating until incorporated, about 45 seconds. Gradually add milk and cream, beating on low speed until incorporated, about 15 seconds.
Generously grease a 13- x 9-inch baking dish with butter. Arrange half of the torn dinner rolls in dish. Sprinkle evenly with 1 cup pineapple tidbits; cover with remaining torn rolls. Sprinkle with remaining 1 cup pineapple tidbits. Slowly pour cream cheese mixture evenly over pineapple-roll mixture. Cover with plastic wrap; refrigerate overnight (or 8 hours).
Stir together pineapple juice and 1 1/2 cups of the granulated sugar in a medium saucepan; bring to a boil over high, stirring to dissolve sugar. Boil, stirring occasionally, until mixture thickens slightly and turns a light golden-amber color, about 15 minutes. Remove from heat; stir in butter cubes until melted and incorporated. If using, stir in rum. Let mixture cool to room temperature, about 45 minutes. Store in an airtight container in refrigerator until ready to use or up to 3 days.
Preheat oven to 350°F. Remove baking dish from refrigerator; remove and discard plastic wrap. Sprinkle casserole evenly with remaining 2 tablespoons granulated sugar. Bake in preheated oven until set in the middle, about 1 hour, rotating baking dish 180 degrees after 30 minutes and, if needed, tenting with aluminum foil after 40 minutes to prevent overbrowning. Remove from oven.
Remove pineapple-caramel mixture from refrigerator; transfer to a small saucepan. Cook over medium-low, stirring constantly, until warmed through, about 2 minutes. Drizzle bread pudding with warm caramel; garnish with macadamia nuts.