Smoothly line an 8- or 9-inch square pan with foil. Lightly butter foil.
In a 3- to 4-quart pan, mix half-and-half, sugar, corn syrup, and salt. Stir occasionally over high heat until simmering, about 3 minutes. With a brush dipped in water, frequently wipe off beads of syrup that form on the sides of the pan.
Reduce heat to medium. Add bittersweet and unsweetened chocolate; gently stir until chocolate melts and mixture begins to simmer, 3 to 6 minutes.
Insert a candy thermometer into mixture. Boil, occasionally stirring and washing sides of pan with wet brush, until mixture reaches 235° (or a drop of candy spooned into cold water forms a soft ball that flattens when removed from water), 30 to 40 minutes longer.
Immediately pour fudge mixture into a 10- by 15-inch rimmed pan. Dot with 2 tablespoons butter and vanilla.
Let stand undisturbed until a thermometer inserted in center of candy registers 115° (pan is warm to touch), 20 to 30 minutes. With a wide metal spatula, scrape mixture back and forth in pan until it becomes smooth and glossy and starts to thicken and mound but is still soft and malleable, 4 to 10 minutes. Add nuts and mix just enough to distribute.
Scrape fudge into foil-lined pan. Let stand until firm to touch, at least 2 hours. Invert pan to release candy. Peel off foil.
With a sharp knife, cut fudge into 1-inch squares and serve. Or wrap the uncut fudge airtight and store at room temperature up to 1 week.
Nutritional analysis per ounce.