When to get rid of '-SNAPSHOT'
I have a similar setup.

For feature/* and develop, I use something like 18.08-SNAPSHOT in my pom.
When we're ready to start release hardening, I'll cut a release branch (release/18.08) and change the version in the pom/s to 18.08.

I'll also bump the version on develop to 18.09-SNAPSHOT, for example.

From there, bugfix and finalise the release, merge to master when appropriate.

We're not properly CI/CD yet, but the issue I bumped in to with release builds was that I still needed unique builds in Artifactory.  So, at build time (for release branches) Jenkins will change the version in the pom to something like 18.08-326 (326 being build number).  It won't commit this change, but the artefact that gets built and pushed to Artifactory will be unique (foobar-18.08-326.war)