Some people look low at Pakistanis because of where they live and as Alijack said, "3rd world". Also, it is very important for a person to make it 100% sure as possible that he/she is not racist when they are talking to/about a colored person, specially a person that has faced racism countless times. Therefore, by using the correct term, Pakistani it would make it very clear that you are not racist and that you respect the person for who he/she is.
Paki seems like an insult because Pakistanis are brown, therefore they don't know if you're racist or not, so if a racist person calls them "You Paki fuck" for example, then when you call them a "Paki" they would think you too are racist because of the racism they have faced. Racism affects a person a lot, it makes you very paranoid when nick names are thrown at you.
You've never heard a Brit complain about being called a Brit, why? because they have accepted that nickname, because last I checked, Britain did the concurring and ruling around the world, so why would British people be paranoid about racist comments being thrown at them? Also in England I've talked to some British peeps, not from this forum and it seems like in England some people look down at Pakistanis, therefore creating a paranoia activity amongst Pakistanis.
And in case your wondering, no I'm not from Pakistan, I just know about racism cause I face it more than 4-5 times a week, and it fucking sucks.