Ok I've being reading through this post because I've being having a major problem with my iMessage showing my email and not my number. And I have to say that I e found the 100% guaranteed way to change your iMessage number. I thought that it was be caused I changed my number that iMessage didn't recognise my new sim. But no. The solution is FAR simpler and easier to fix.
Step 1. Forget everything that you have read on here about changing a setting, or putting your sim into someone else's phone, or twirling round on the spot three times then running through a field backward screaming IM A PURPLE BANANA! Just no!
Step 2. Go into your contacts, either through the app or the phone. Makes no difference
Step 3. Look up your business card. You cannot miss it, it will be your full name, be a different colour to the rest of your contacts and have a silhouette on the far right hand side.
Step 4. Once you found it click on it (don't worry you won't call your self) and then click on edit. Now if you've changed numbers at any point then your old number might still be saved here if it is go straight to step 6. If not then wait till step 7
Step 6. Delete your old number from your contact card.
Step 7. With your old number gone from your iPhone compleatly, look for the field that says iPhone. This is where you enter you number. Not in work or home or mobile, (or cell for our American and Canadian friends) only in the iPhone field.
Step 8. Save.
And the should be it. Once you've saved it just go to the settings for iMessage and check to see if your iMessage number has being changed. You don't need to turn anything off, you don't need to take your SIM card out. You don't need to change any settings. Just follow these 8 simple steps and you should be fine.
Now if you don't have a business card set up and you don't know how to set one up, then I'm sorry but that how to will be a different post entirely.