We had setup a CPT using Toolset Types and had been adding data just fine. We went back into the post type and turned off the 'has_archive' option of the CPT as we were having issues with using the WordPress Archive template in Toolset and just wanted to use a page. So we turned off the has_archive and updated the CPT. Then we went in and setup a page using the slug to be our archive page. This all works just fine and is a common use case with WP. The issue came up when we needed to edit the CPT again to add a 'supports' option. We couldn't update the CPT now because we have a page with the slug even though the CPT was setup first.
So not sure if the logic in you checks should be changed to maybe check for the has_archive if you are going to check for a page and also if this is an edit or a new CPT save.
I've raised it as a usability issue with the developers to see whether they can remove the restricution if is_archive is not a checked option.
But on your site you will need to edit the page that uses the same slug and change it to something else, even if temporarily, so that you can make changes to the post type settings page.
Yes, I found a way to force this in after looking at the code. I originally didn't think about the page and commented some lines of code in your plugin to make the edit. Then I had the "ah ha" moment that it was the WP page as I had seen a parameter for page check.
Just wanted to pass along the issue that seems to be some what of a bug since the scenario is a common scenario and works just fine when we have created out CPT through code rather than your plugin. We just happen to be using your plugin for a site and ran into this.