I don't have a clever solution for 1. This is definitely a broader cultural issue - non-lawyers at a law firm would completely expect to make less than the lawyers but programmers still don't nearly get that level of respect.
EDIT: I think we're miscommunicating a little. There absolutely are quite a lot of qualified senior developers right now. Most of them are employed. You're just not seeing a lot of qualified senior developers applying to your jobs, which is a different issue entirely. Given that nobody's turned an offer down, there's something that your job postings are missing that people are learning during the interview process. "Not paying enough", in this case, can be effectively synonymous with "not communicating that you're paying enough".