Assuming that the contract rolls over every month if you don't do anything to cancel:
Call them when there's a month to go, and ask for a PAC code. Explain to them that you've seen x deal somewhere else and ask them if they can match it.
They will.
If you're happy to keep your current phone, ask for a credit against your bill. They'll probably offer you just less than what you'll get selling the new handset on ebay.
So you say, 'OK then, forget the PAC code'.
You'll have to agree to an extra 12/18 months from the original end date of course.
Can't comment on the phones you mentioned I'm afraid; if it isn't SE then it's not good enough for me
And everyone ends up happy