Can I have a price set option add a registrant to the waitlist if the event isn't full?
One approach would be to ask the resident/non-resident question first and direct them to two separate events: a residents one for immediate registration and a non-residents one with a max participants of 0.  

When you want to allow non-residents to book you have two basic options:


open up non-resident bookings by changing the max participants on the non-resident event  
find a way to transfer waitlist registrations from the non-resident event to the resident event.


For 1), you end up with registrations spread across two events which is not ideal but may or may not matter to you.  To manage further registrations you probably want to close the residents event at the same time and direct any new registrations to the non-res one so that you can still manage total numbers.

For 2), I don't think there is an easy way to transfer registrations between events without some coding.

You mention cPanel - that's not relevant here.  Event configuration is under the Event menu: