Welcome to this user forum.
Its up to Vodaphone to sort this out, as they are your provider. Have you ever been with Sky in the past, before you transferred to BT?
Then the number would belong to Sky, and was ported to BT, but Sky still own that number. When you moved to Vodaphone, the number would have reverted back to Sky, which is why you have lost it.
BT would have been able to port the number from Sky, because it was probably in the same number range as the local BT exchange, which is why BT say they can see the number exists, but as it belongs to Sky, it would not be available on the local exchange.
I cannot see any way of getting the number back, even if you went back to BT, as Sky would eventually want to issue the number to one of its customers.
The ownership always stays with the original owner of the number. It can be ported "loaned" to another provider in some cases, but it will always revert to its original owner if the porting is removed.
Ofcom allocated specific number ranges to each provider when the market was opened up to other providers.
BT may see it on the exchange number range, but they do not own it, as it would be part of the block of numbers allocated to Sky.
I think the BT person was probably mistaken.
I cannot see BT Retail can help with this, now you have moved to Vodaphone. Did Vodaphone arrange for a number change announcement, so that people ringing your old number would be told you new one?
I think all you can do is to contact people, and tell them your new number. It would be the same if you have moved house. I assume Vodaphone own the new number, so you may have the same issue again if you move providers.
If you wanted to come back to BT, then again you would have a new number, but this time it would be a BT Retail owned number.
One day, when everyone is on VOIP, then you will be able to keep your number for life.
I agree, number porting is a mess, and its an issue which crops up time and time again on this forum.
Moving house with BT is fine, provided your new house is connected to the same BT exchange, otherwise you have to accept a new number.
The only way I could see you could get your number back, would be to move to Sky, as I caanot see they would have re-used the number yet.
This is off topic for a BT Retail forum, so I will leave it at that.