Make the cookie dough: Combine butter, sugar and cinnamon in a stand mixer fitted with the paddle attachment. Beat on medium speed until smooth and fluffy, about 3-4 minutes, pausing every now and then to scrape down the sides with a rubber spatula.
Add the egg and vanilla extract, and beat until combined, about 1 minute.
In a separate bowl, whisk together the all-purpose flour, almond flour and salt.
Add the flours to the butter mixture and mix briefly, just until incorporated.
Chill the dough: Divide the dough in half and pat each into a disc. Wrap in plastic and refrigerate until firm, at least one hour or up to 5 days.
Roll the dough: Place one of the halves in between two pieces of parchment paper. Roll, using a rolling pin, to about 1/4-inch thick.
Cut the cookies: If using a Linzer cutter, use the cutter without the insert to cut out 12 rounds. These will be the bottoms. If using a regular cutter, you can use a round or fluted 2-inch cutter to cut the bottoms.
Transfer the bottom cookies to a parchment paper lined baking sheet and refrigerate for 30 minutes. Gather the scrap dough and roll it out to cut more cookies.
Roll out the second disc and use the Linzer cookie cutter with the insert of your choice to cut out the tops, detaching the cutout center. Alternatively, you can use the 2-inch cutter to cut rounds and a 1-inch cutter to make a cut in the center. Place the cookies in another lined baking sheet and chill for 30 minutes.
Preheat oven to 350 degrees F for at least 15 minutes.
Bake the cookies for 8 to 10 minutes, or until the edges are lightly golden brown. Let them cool slightly and then transfer to a wired rack so they can cool completely before filling.
Dust the cookies: Place the top cookies on a cookie sheet and dust them with confectioners' sugar.
Fill with dulce de leche: Turn the remaining cookies flat side up (the side that was in contact with the baking sheet) and spread 1 teaspoon of dulce de leche into the center, spreading it.
Top with the dusted top cookies and serve!