У вас не совсем верная интерпретация фактов: 7% населения Пакистана считает урду родным, а говорит на нем - большинство:

Если в стране проживают разные народы, говорящие на разных языках, должен же быть какой-то объединяющий язык, лингва-франка? В силу колониального прошлого таким был английский, но власти Пакистана решили отходить от его употребления, поэтому используют второй по распространенности язык - урду.
Вы наверное, своим вопросом хотели спросить, почему например не панджаби, который является родным для ок. 40% населения Пакистана. Но он распространен только на востоке страны, в других частях страны он будет не понятен и не сможет исполнять функцию лингва-франка. Так что - урду, имеет статус государственного (наряду с английским), а панджаби - статус регионального, в провинции Пенджаб .