I followed the instructions outlined by @archemorus. But I still continued having the same issue in sandbox.
My solution was to ensure that after my initial subscription was expired or cancelled I exit the Settings-> AppStore-> Sandbox Account -> Manage Sandbox Apple Account sheet before attempting to call product.purchase() within my app again. For some reason when I had that Sandbox Account settings page open It was interfering with the product.purchase(). After exiting that page I was able to consistently complete purchase within my app (It prompted the purchase dialog).
I have not tested this in TestFlight or Product yet.
I would really like to avoid the integrating v1 as suggested by @Korol. Has anyone verified if @Korol suggestion is still required for production?