Credits to Val, thank you for your help.
The attached PDF will help you set up your SPA112 device from scratch. It is a known working configuration so if you are having troubles with your SPA112 reset back to defaults and follow this guide.
Edit: 1.Navigate to Voice-->SIP tab-->SIP Timer Values (sec)-->Reg Retry Intvl should be 120 seconds
https://support.freephoneline.ca/hc/en- ... redentials
2. (Do what Mango wrote below.)
In your SPA112 ATA, navigate to Voice-->SIP tab-->NAT Support Parameters, and make sure that the following settings are enabled:
a)Handle VIA received-->yes
b)Handle VIA rport-->yes
c)Substitute VIA Addr-->yes
3. In your SPA112 ATA, navigate to Voice-->Line 1 (or whatever Line you're using for FPL)-->SIP settings, and change SIP Port to a random number between 30000 and 60000. Do this for security reasons (to help avoid SIP Scanners/hackers). Also, this step may help to temporarily address a corrupted NAT association that's developed between a router and ATA (if you're having registration issues, try selecting a new random port number in this range, and then reboot the ATA. If that works, you were dealing with a corrupted/stale NAT association in your router).
4. In your ATA, navigate to Voice-->Line (whichever you use for FPL)-->Supplementary Service Subscription-->Block CID Serv:
a) change to no
b) Click "submit"
Having Block CID Serv enabled was a reported issue with SPA112s dropping calls after 15 minutes with FPL.