I can't answer your original question - I haven't often had trouble finding lunch offerings, but we may favor different restaurants. I'd guess the ones that are closed for lunch are either doing well enough that they don't need to stay open for two meals, or don't get enough of a lunch crowd to justify paying the staff.
I've always heard that 12 Bones is the best BBQ place around (and popular enough that they can afford to be open only for lunch, and not on weekends). The line is always out the door and around the building. President Obama stops there every time he visits, for whatever that's worth. Their blueberry chipotle rub is supposed to be amazing, and their sides are very popular as well. They also have a great fried green tomato and portabella sandwich for us vegetarians.