Preheat your oven to 350°F (175°C). Line a 9×9 inch square baking pan with parchment paper, leaving an overhang on the sides so you can easily lift the bars out later. Lightly grease the paper with non-stick spray.
In a medium bowl, combine the graham cracker crumbs, melted butter, and sugar. Mix until the crumbs are evenly moistened. Press the mixture firmly into the bottom of your prepared baking pan. Bake for 8 minutes, then remove from the oven and let it cool slightly.
In a large bowl, beat the softened cream cheese and granulated sugar together until smooth and creamy. Add the eggs one at a time, beating on low speed just until combined. Stir in the vanilla extract. Pour the filling over the pre-baked crust and spread it evenly.
In a separate bowl, toss the diced apples with cinnamon, nutmeg, and brown sugar until the fruit is well coated. Gently spoon the apple mixture over the cheesecake layer, trying to distribute the pieces evenly without pressing them too deep into the batter.
Combine the flour, oats, and brown sugar in a small bowl. Use a pastry cutter or your fingers to work in the cold, cubed butter until the mixture looks like coarse crumbs. Sprinkle the streusel generously over the apple layer.
Place the pan in the oven and bake for 40 to 45 minutes. The edges should be set and the streusel should be golden brown. The center might still have a slight jiggle, which is normal. Remove from the oven and let the pan cool completely on a wire rack.
Once cooled to room temperature, refrigerate the bars for at least 3 hours (or overnight) to allow the cheesecake to set. Before serving, lift the bars out of the pan using the parchment paper. Drizzle the top with caramel sauce and slice into squares.