Lots of Pakistani homes do have dining rooms and/or tables. In the small bit of Pakistan I've seen, it seems that the more prosperous a family is, or the more "western" they are, the more likely to have a dining table. In more rural areas, or in very poor neighborhoods, it's more likely that people will eat on the floor. Here are the theories I thought of for the 'why' portion of the question:
1. In many Pakistani homes, especially in low and middle class families, space is a deciding factor. Many families might not have the space to dedicate to a dining room table. Rooms can serve as living room, bedroom, and dining room - all at once. It would be unfeasible to dedicate so much space for just one purpose. A dastur-khwan, or floor cloth, can be laid on the floor at any time, and removed after a meal.
2. Some people eat on the floor because it's the sunnah - or example - of the Prophet Muhammad (pbuh). He ate while sitting on the floor, and because Muslims believe he was the best example of how to live as a Muslim, they follow his example, sometimes even in these small ways.
3. Sometimes a family might like to have a dining table, but doesn't have the money for it.
4. Some families might just prefer eating on the floor. It's impromptu - anyone can just sit anywhere, no seating arrangements requires, and it requires very little set up or maintenance, and people can relax easily after a big meal.
In M's family it's a mix of the various situations described above. His family does not have a dining room, but they have converted the outdoor front veranda into a dining room of sorts. There are curtains against the gate to the outside to keep out dust and make it semi-private. There is a dining table and chairs, and many of the meals are eaten here as a family. Informal meals are eaten in an indoor sitting area (that also doubles as a bedroom at night), and everybody sits in a circle around the floorcloth with the food in the center. It's the equivalent of an American family ordering pizza and sitting on couches in the TV room to eat, rather than the usual dinner in the dining room.
There's also some amount of personal preference. Even in America, when attending desi dinner parties, many times they're served on the floor. This happened more often when M was a grad student and I was attending dinners at the homes of other grad students (less money, less space, often more recent immigrants) but it's happened since as well. I've also been to places in Pakistan that had gorgeous, ornate dining rooms with huge tables and dozens of chairs, and the host ate every single thing with a knife & fork, even a pizza, a doughnut and a banana. Seriously. Probably in an effort to distance himself from the floor-sitting, hand-eating customs. (I mean no disrespect, he was a wonderful host, and I think people can eat however they want!)
To sum: not every Pakistani does eat on the floor, and those that do so have a variety of reasons for the practice. I'll allow my commenters to fill the gaps in my explanation.
Well, I guess that doesn't help at all then, does it?