2 1/2 cups fresh or frozen cranberries (10 ounces)
2 teaspoons fresh lime juice
1 teaspoon freshly grated lime zest
1/4 cup sugar
2 tablespoons cornstarch
1 teaspoon pure vanilla extract
Pinch of salt
1/4 teaspoon freshly ground black pepper
3/4 teaspoon cinnamon
1/2 cup all-purpose flour
1/2 cup rolled oats
1/2 cup light brown sugar
1 stick unsalted butter, cubed and chilled
Preheat the oven to 350°. Butter and flour a 9-inch-round springform cake pan. In a medium bowl, whisk together the flour, sugar, baking powder, baking soda and salt. Using an electric mixer at low speed, beat in the butter until it looks like coarse meal. In a small bowl, whisk the egg yolks with the sour cream and vanilla. Beat the egg mixture into the dry ingredients at medium-low speed just until incorporated, about 1 minute. Scrape the cake batter into the prepared springform pan.
In a medium bowl, stir the cranberries with the lime juice, zest, sugar, cornstarch, vanilla, salt, black pepper and 1/4 teaspoon of the cinnamon. Spoon the mixture over the cake batter.
In another bowl, mix together the flour, oats and brown sugar, then stir in the remaining 1/2 teaspoon of cinnamon. Using a pastry blender or 2 knives, cut in the chilled butter until it resembles coarse meal. Sprinkle the topping over the cranberries and bake the streusel cake for about 1 hour, until a cake tester inserted in the center of the cake comes out clean. Let the cake cool completely, then remove the ring and serve.
The cranberry streusel cake can be kept covered at room temperature for up to 2 days.