Position one oven rack in the center and another on the bottom. Preheat your oven to 325°F.
Prepare the bottom cheesecake crust: In a medium bowl, combine the graham cracker crust ingredients and mix well. Press the mixture firmly into the bottom and up about halfway along the sides of a 9-inch springform pan. Be sure to use a pan with sides that are at least 2 inches high (this will be a tall cheesecake!).
Bake the cheesecake crust in the center of the oven for 8 minutes. Although it won’t look different, this step helps maintain its crisp texture. Remove the crust from the oven and set it aside to cool slightly while you prepare the other cheesecake components.
Prepare the cinnamon swirl: In a small bowl, mix together all the ingredients for the cinnamon swirl and set it aside.
Prepare the streusel topping: In a medium bowl, mix and mash all the streusel topping ingredients together until you have a well-moistened, crumbly mixture. Set aside.
Make the cheesecake filling: In a large bowl, combine the cream cheese and sugar. Using an electric mixer with the paddle attachment, beat the cream cheese and sugar together until the mixture is smooth and the sugar is fully dissolved (about 1 to 2 minutes on medium speed). You can do this by hand with a wooden spoon, but it will require more effort.
Add the sour cream, flour, salt, and vanilla extract to the cream cheese mixture. Mix until fully combined.
Add the eggs one at a time, mixing after each addition to incorporate the egg into the batter before adding the next. Be careful not to overmix—just blend until the egg is fully incorporated.
Assemble the cheesecake: Pour about half of the cheesecake filling over the slightly cooled crust and spread it into an even layer. Sprinkle the cinnamon swirl mixture over the top. Carefully drizzle the remaining cheesecake filling over the cinnamon swirl. It’s easiest to dollop the filling to avoid disrupting the cinnamon layer, and then gently spread it into an even layer. Use a skewer to gently swirl the layers together, taking care not to hit the bottom crust. Sprinkle the streusel evenly on top.
Prepare a water bath: Fill a large pan with 2 cups of boiling water and place it on the bottom rack of the preheated 325°F oven to create steam. Place the cheesecake on the center rack, directly above the water pan.
Bake the cheesecake: Bake the cheesecake in the preheated 325°F oven for 70 minutes with the water pan. After 70 minutes, remove the pan of water from the oven and continue baking the cheesecake for another 20 to 30 minutes. The top of the cheesecake should be slightly puffed up, and the streusel should be golden brown and crisp. Gently shake the pan—if the edges are set and the center still jiggles slightly, it’s done.
Cool the cheesecake: Turn off the oven and leave the cheesecake in the oven with the door slightly ajar for 2 hours. It will deflate slightly as it cools. After 30 minutes, run a thin knife around the edges of the cheesecake to prevent it from sticking.
Once the cheesecake has cooled to room temperature, refrigerate it for at least 4 hours or until fully chilled and set.
Prepare the icing: In a medium bowl, whisk together the powdered sugar and 1 tablespoon of milk. If the icing is too thick, gradually add more milk until it reaches your desired consistency.
Drizzle the icing: Once the cheesecake is fully chilled and set, remove it from the pan. Drizzle the icing over the top before slicing and serving!