Preheat your oven to 350°F (175°C). Grease a 13x9-inch (33x23 cm) baking pan.
For the topping, stir together the melted butter and brown sugar in a small bowl. Spread this mixture evenly across the bottom of the prepared baking pan.
Arrange the drained pineapple slices over the brown sugar layer. Place a few of the whole cranberries in the center of each pineapple ring and scatter the remaining cup of whole cranberries around the slices.
For the cake batter, use a large bowl and an electric mixer to beat the softened butter and granulated sugar until the mixture is light and fluffy, about 2-3 minutes.
Beat in the eggs one at a time, followed by the vanilla extract. In a separate bowl, whisk together the flour, baking powder, salt, cinnamon, and allspice.
Add the flour mixture to the butter mixture in three parts, alternating with the sour cream. Mix on low speed until just combined; do not overmix. Gently fold in the halved cranberries.
Spoon the batter over the fruit in the baking pan, spreading it carefully to cover the fruit and reach the edges.
Bake for 50-60 minutes. The cake is done when it's golden brown and a wooden skewer inserted into the center comes out clean.
Let the cake cool in the pan on a wire rack for 10 minutes. Run a knife around the edges of the pan, place a large serving platter over the top, and carefully flip the cake over. Serve warm.