They are the same.
-Xrepresents a non-standard argument. Non-standard arguments work only for certain virtual machines (hence the name non-standard). noverify- it's just a shorthand for Xverify:none.
Why are there both? I do not think that you will get a real answer if you do not ask the developers - it is not documented (as far as I can see). My best guess would be to stay consistent and reduce verbosity.
, noverify , -Xverify:true. , -Xverify:true, -Xverify:false -Xverify, , noverify.