Bitcoin Core's default is 14days (336hours), but not all nodes enforce the same settings so it may stay longer than that.
Its a long time ago, but I had such issue with my mycelium wallet and the transaction got returned a lot earlier.
In a nutshell is Child pays for parent basically resending that unconfirmed transaction to myself again with higher fees?
Yes, you will basically use the same output of the unconfirmed tx and send it to your own another address which you control.