Answer 1: Employees cannot legally pay for green card expenses, H-1B fees, or premium processing associated with PERM. For the green card process, the employer must cover all costs. In the case of the I-140 stage, the employer should pay, especially if the employee is on H-1B. However, for the I-485 stage, the employee can pay.
Regarding H-1B, the employer should generally cover all expenses, except for premium processing. If premium processing is for the employee's benefit and the employer opts not to pay, the employee can choose to cover the cost. If premium processing is for the employer's convenience, the employer must pay.
In summary:
Green Card (PERM): Employer must pay; employee cannot.
I-140 stage: Employer should pay, especially for H-1B holders.
I-485 stage: Employee can pay.
H-1B expenses: Employer should pay, except for premium processing.
Premium processing: Employee can pay if for their benefit; otherwise, employer must pay.
Answer 2: Additionally, an employee with an old H-1B stamp from a previous employer can use it for a different employer. There's no need for new visa stamping if there's a new approval notice. Traveling on the old stamp with the new approval is permissible.
I got my Immigrant Visa thru Consular Processing on August 2000. Law Offices of Rajiv Khanna helped me through the process. His staff were generally helpful and knowledgeable. Among other things one I most appreciated was the fact Rajiv made time to reply every e-mail queries I sent and return every phone messages I left. That was re-assuring during various stages of the process. I will certainly refer them to anyone who wants immigration/non-immigration services.