Preheat your oven to 350°F (175°C). Butter a 9x13-inch baking dish generously and set aside.
Spread the bread cubes in the prepared baking dish in an even layer. Scatter the cream cheese chunks evenly throughout the bread, tucking some pieces between the cubes.
In a large mixing bowl, whisk together the eggs and granulated sugar until well combined and slightly pale, about 1 minute.
Add the milk, heavy cream, lemon juice, lemon zest, vanilla extract, and salt to the egg mixture. Whisk until smooth and thoroughly combined.
Pour the custard mixture evenly over the bread cubes, making sure to saturate all pieces. Press down gently with a spatula to help the bread absorb the liquid. Let stand for 15 minutes to soak.
Drizzle the melted butter over the top of the bread pudding for extra golden color and richness.
Bake uncovered for 45-50 minutes, until the top is golden brown and puffed, and the center jiggles only slightly when gently shaken. A knife inserted in the center should come out with creamy custard clinging to it.
Remove from the oven and let cool for 10-15 minutes before serving. The pudding will set up slightly as it cools. Dust with powdered sugar if desired and serve warm.