As for the question #2 and #3, I mean when my H1B reached the 6-year limit and my spouse's priority date is not current but will be current soon, may I request 6-month or 12-month "unpaid leave" to my employer so that I can continue working after my spouse's priority date is current and I get EAD card?
-Have you filed your I-485 yet?If yes and you do not extend your h1 status when your H1 reaches the 6 year limit, your status will be AOS and you can legally stay. So, as long as your employer agrees, you can take the unpaid leave as longer as you want.
If you have not filed I-485 yet, you had better change your status to another non-immigration status such as F1. B2, etc. if you are not qaulified for extending your H1 beyond the 6 year limit. Otherwise, you may have big trouble in your future I-485 filing unless your spouse' PD will be current within 6 months after your h1 expires. "Unpaid leaves" can not save you in this case.
If the employer would like to agree with my "unpaid leave" during this pending period, will it be legal to do so?