Just cancelled my T-mobile contract with 6 months to go. Found out that you can downgrade a 18 month contract after 11 months. So, downgraded to cheapest contract (£15/month) and then cancelled. This was actually suggested by the T-mobile customer service rep and saved me over £80.
First deal post, so hope it of use to somebody!