Add whole milk, cream, and salt to a saucepan over medium-low heat, whisk in cocoa powder, sugar, and protein powder. Cook, stirring occasionally, until almost simmering (180-190F) and sugar has dissolved, 3-4 minutes. Remove from heat.
Add egg yolks to a bowl and whisk well. Slowly whisk 1 cup of hot milk mixture into the yolks. Pour the egg mixture into the saucepan and cook, stirring continuously, until thickened, about 8-10 minutes. (Do not allow the custard to boil.)
Pour into a bowl and refrigerate for several hours or overnight, until completely chilled. (Depending on the your ice cream maker, you may need to freeze the bowl of the ice cream maker overnight as well).
Stir in almond and vanilla extract, and bourbon (will make the ice cream easier to scoop) and then pour the mixture into an ice cream maker and freeze/churn according to the manufacturer's instructions.
During the last 10 minutes of the churn, add in chocolate and/or toffee chunks, if using. I also add peanut butter at this point, but then it blends in, you won't get ribbons of it. If you want visible ribbons, add in stages while transferring to the container, and use a knife to incorporate it. Transfer the ice cream to a container, cover the surface with plastic wrap, and freeze until firm, at least 3 hours.
Note: You can use a non-sugar sweetener, such as allulose, and unsweetened chocolate chunks to make sugar-free ice cream.