Given that there's no registry of mobile phone numbers (and that there's not even a requirement to register your details with anyone when you buy a mobile phone), I fail to see how anyone can "get you a mobile number".
As your post effectively indicates, the firm behind the 118 118 number charges £4.49 per call plus £4.49 per minute on top of that. However the same firm offers a flat rate ('no frills') £1 service on 118 811 and a free (ad-funded) service on 0800 118 3733. However, since all of the numbers in their database are available online (for free) anyway, there seems to be little point in calling their directory service. [It's worth remembering though that the majority of residential landline numbers are ex-directory anyway].