Why doesn't Sodium (Na) form duplet?
Well, sodium does have non-zero electron affinity, so it surely can acquire another electron, provided it can get one for free. That's what happens when a lone sodium atom meets a lone electron somewhere in deep space. But here on Earth, with all that condensed matter around, we don't have many free electrons (*). They all belong to some other atoms, and if you want to get an electron (that is, to get reduced), you have to oxidize something else.



(*) Then again, some might recall metals in which the electrons are kinda free, but wait: they are not really free. They are bound by the collective field of metal cations, and you need to apply certain energy to take one out.



It turns out that $\ce{Na}$ and other alkali metals can actually be reduced to form alkalides, but those are exotic compounds. They are not particularly stable, and get oxidized with pretty much anything. It is much easier for $\ce{Na}$ to form a cation, thus achieving the stable octet, and call it a day.

There is a whole different dimension to the problem: why wouldn't two sodium atoms share their electrons, establish a bond, and form a diatomic molecule? Again, they would, but only in a vacuum! When you have many such molecules, the sodium atoms would share their other empty orbitals, find out they don't have enough electrons to fill them all, and just resort to being a metal.