Pour the milk into a saucepan and bring just to a boil over medium-high heat.
In a large bowl, whisk together the egg yolks and the sugar until the sugar starts to dissolve and the yolks turn light yellow, about 3 minutes. Gradually whisk in the hot milk, adding it in a thin stream at first so as not to cook the yolks, and then more quickly. Return the mixture to the saucepan and cook over low heat, without boiling, until the mixture thickly coats the back of a spoon, 4 to 5 minutes. Remove from the heat and stir in the vanilla and amaretto. Refrigerate until cool (or chill in a water bath).
Preheat the oven to 350 degrees F. Spread the almonds on a baking sheet and toast until golden and fragrant, 7 to 10 minutes.
When the custard is cold, whip the cream to stiff peaks and fold into the custard along with the toasted almonds. Scrape the mixture into a 9 by 5-inch loaf pan, cover and freeze until firm.
Meanwhile, put the figs, dates, honey, water, lemon juice, and cinnamon stick in a small saucepan and set it over medium heat. Bring to a simmer and cook for about 10 minutes until the fruit is soft. Let cool slightly, then remove the cinnamon stick.
To serve, dip the bottom of the loaf pan in a bowl of hot water for 5 seconds. Put a platter on top and then invert quickly; lift off the loaf pan. Cut the semifreddo into slices and put the slices on plates. Spoon the spiced honey and dried fruit over and crumble amaretto cookies over the top for crunch.