Whisk together the milk, sugar, and unsweetened cocoa powder in a medium saucepan over medium heat. Stir constantly until the mixture gets smooth and steamy — this takes about 3 minutes. Don't let it boil or you'll end up with a grainy mess (learned that the hard way). Add the butter and keep stirring until it melts completely.
Pour the hot chocolate mixture into a bowl and let it cool for about 5 minutes until it's no longer steaming. Meanwhile, grab a separate small bowl and whisk together the eggs, vanilla extract, and salt. Slowly drizzle the egg mixture into the chocolate while whisking constantly — you're basically making a homemade chocolate custard here. Keep whisking until everything's combined and smooth.
Stir in the chocolate chips and let them melt from the heat of the mixture, stirring every 30 seconds or so. This should take about 2 minutes total. The consistency will thicken up as it cools, which is exactly what you want for these homemade chocolate fudge pops.
Once the mixture cools to room temperature (about 20 minutes), fold in the marshmallows, walnuts, and shredded coconut gently. Don't overmix or you'll lose some of that fluffy marshmallow texture. The mixture should feel thick and kinda creamy at this point.
Lightly brush the inside of your popsicle molds with vegetable oil to make removal easier later. Pour the chocolate mixture evenly into each mold, leaving about 1/4 inch at the top for expansion. Insert the sticks and freeze for about 1 hour until they're solid enough to stand on their own.
After that first hour, you can remove the temporary sticks if you used them, and insert the final sticks into the now-firm mixture. Freeze for another 3 hours until these homemade chocolate fudge pops are completely solid throughout. (If your molds have built-in sticks, just skip the stick swap.)
To remove them, run warm water over the outside of each mold for about 30 seconds, then gently push from the bottom. They'll slide right out without cracking. Store them in the freezer in an airtight container until you're ready to serve.