Heat the oven to 350F.
Grease a 10 in tube pan with butter.
In a small bowl, whisk together the sugar, brown sugar and flour until well blended.
Stir in the almonds.
Add the melted butter and using a fork or your fingers, mix until evenly combined and the mixture starts to come together.
Set aside.
In a medium bowl, whisk together the flour, baking powder, baking soda, xanthan gum and salt until well combined.
Set aside.
In a large bowl, using an electric mixer on medium speed, cream the butter and sugar until light and fluffy, about 3 minutes.
Scrape down sides of the bowl.
Add the eggs, one at a time, beating well after each addition.
Scrape down sides of the bowl.
Stir in the almond extract.
Add the flour mixture and the sour cream to the butter-sugar mixture, stirring between each addition until blended.
Mix until smooth, about 30 seconds.
Spoon half the batter into the prepared pan.
Sprinkle ⅔ of the streusel mixture over the batter.
Top with the remaining batter and spread smooth.
Crumble the remaining streusel over the top of the batter.
Bake until golden brown and a wooden pick inserted into the center comes out clean, 55 minutes.
Let the cake cool in a pan on a wire rack for 5 minutes.
Gently run a knife blade between the cake and the edge of the pan to loosen.
Remove the sides and center of the pan and transfer the coffee cake onto a wire rack to cool.
In a medium bowl, combine the powdered sugar, half-and-half, butter and almond extract.
Beat with a whisk until smooth and spreadable.
Spread or drizzle the icing over the cake.