In a tall 4-qt. nonreactive pot, stir together milk, sugar, and cinnamon. Place over medium-high heat and bring to a boil. Do not stir the milk, but use a spoon to skim off and discard any skin that forms on the surface of the liquid. Boil until the mixture is reduced to about 2 3⁄4 cups, 25–30 minutes. Remove and discard the cinnamon.
Whisk egg yolks in a medium metal bowl. While whisking yolks constantly, slowly drizzle in the hot milk mixture. Set the bowl over a saucepan of gently simmering water, making sure the bottom of the bowl does not touch the water, and cook, stirring constantly with a wooden spoon, until the mixture thickens enough to coat the back of the spoon or until it reaches 175° on an instant-read thermometer, about 5 minutes. Immediately place the bowl in a larger bowl of ice water and let cool, stirring frequently. Whisk in the rum and vanilla.
Strain the mixture through a fine sieve into a 1-qt. jar or bottle. Refrigerate for 8 hours or overnight to allow flavors to meld. Serve chilled.