In a mixing bowl, combine the unsalted butter, cream cheese, sour cream, all-purpose flour, salt, and granulated sugar. Beat with a hand or stand mixer on low speed until a smooth dough forms; avoid overmixing.
Divide the dough into four equal portions, shape into disks, wrap each in plastic wrap, and refrigerate for at least 2 hours or overnight.
In a separate bowl, mix the chopped walnuts or pecans, semi-sweet chocolate chips, berry preserves, and brown sugar until well combined.
Preheat oven to 350°F (175°C). On a lightly floured surface, roll out one disk of dough into a 1/8-inch thick circle.
Spread a thin layer of filling over the dough circle, leaving a small border around the edge.
Cut the dough circle into 8-12 wedges using a sharp knife or pizza cutter. Roll each wedge from the wide end toward the point to form a crescent shape.
Place rolled Rugelach on a baking sheet lined with parchment paper. Whisk together the egg and water, then brush the egg wash over each pastry. Sprinkle with granulated sugar and cinnamon.
Bake for 20-25 minutes until golden brown. Cool on the baking sheet a few minutes, then transfer to a wire rack to cool completely.