Why is the F-F bond in fluorine a p-p sigma bond?
Hybridisation is a mathematical concept chemists use to better understand spatial distribution of bonded atoms. It should only be used if we cannot explain the structure will without resorting to hybridisation.

The energy of a 2s orbital is lower than that of a 2p orbital in atoms with a fully populated 1s orbital. Therefore, there is a desire to keep its energy low. A bond between two p orbitals (of different atoms) will also lower the energy of one of these p orbitals (and create an antibonding &#x3c3;* unpopulated one, too).

Furthermore, p orbitals extend into space in a directed manner: Along their coordinate axis, while s-orbitals are spherical in shape. The p orbital is already in a nice direction for bonding; any mixing with s orbitals will make it extend into space slightly less — potentially unfavourable for orbital overlap.

Finally, the lone pairs on each fluorine atom will be a set of two p type orbitals, each carrying a lone pair perpendicular to the bond axis, and an s type orbital. Experimentally, one should be able to detect two different energy levels for the two different lone pairs. (However, I didn’t go looking for papers and I can’t remember any lecturer mentioning any off the top of my head.)

So the $\ce{F-F}$ bond is indeed a $\mathrm{p^\unicode[Times]{x3c3}\ce{-}p^\unicode[Times]{x3c3}}$ bond because it makes the overall system energetically favourable.