What’s the best way to implement custom widgets on a per post basis?

Twitter, Facebook, and Youtube links/feeds to their individual
profiles.

Those links/feeds are meta data for posts, so postmeta is the place where you should store them. Easy way to add meta data to posts is Custom Fields, also you can create and use meta box for this purpose.

Here is tutorial for creating meta boxes: http://www.wproots.com/ultimate-guide-to-meta-boxes-in-wordpress/