1) What file extension should I save the private key from cPanel using? .pem? .txt? Does this even matter?
There's no standard extension for PEM keys. And indeed, it does not matter.
2) When I try to import my cPanel private key into PuTTYgen, why does it say, "Enter a passphrase for key"?
I do not know cPanel.
But according to this page:
... There's "passphrase" field on the cPanel SSH Key Generator page.
(maybe the field got unintentionally autofilled by your web browser)