In a medium bowl, combine almond flour, brown sugar substitute, cinnamon, ginger, espresso, and cocoa powder.
Add the cold butter cubes
Use your fingertips to work the butter into the dry ingredients until the mixture resembles coarse crumbs with pea-sized butter pieces, then add in the nuts (if using).
Place in refrigerator while preparing the cake batter.
Preheat your oven to 325°F (163°C).
Line an 8×8 inch baking pan with parchment paper and lightly grease the sides.
In a small bowl, sprinkle the gelatin over the cold water and let sit for 5 minutes to bloom.
After blooming, microwave the gelatin mixture for 10 seconds or until just liquified. Set aside.
In a large bowl, whisk together the almond flour, coconut flour, baking powder, salt, cinnamon and nutmeg.
In a separate bowl, whisk together the melted butter, brown sugar substitute, eggs, vanilla, almond extract, flaxseeds, and heavy cream until combined, then whisk in the bloomed gelatin.
Let the wet mixture sit for 5 minutes to allow the flaxseed to develop its binding properties.
Gradually add the dry ingredients to the wet ingredients, stirring with a spatula until just combined.
Let the batter rest for another 5 minutes to allow the coconut flour to absorb moisture.
Pour half of the batter into the prepared baking pan and spread evenly.
Sprinkle about ⅓ of the streusel mixture over this layer.
Carefully spread the remaining batter over the streusel layer.
Top with the remaining streusel, pressing it lightly into the batter.
Bake at 325°F for 40-45 minutes, or until a toothpick inserted in the center comes out clean.
If the top begins to brown too quickly, loosely cover with aluminum foil after about 25-30 minutes of baking.
Allow the cake to cool in the pan for 15-20 minutes before transferring to a wire rack to cool completely.
