The limousine driver has waited for almost an hour before deciding his client was not going to show up.
A. The limousine driver has waited for almost an hour before deciding -> We need past tense. Tense error. Incorrect.
B. The limousine driver waited for almost an hour before deciding that -> It is better.
C. The limousine driver has waited for almost an hour before he decided that -> We need past tense. Tense error. Incorrect.
D. The limousine driver was waiting for almost an hour before deciding -> No need to use progressive tense. Incorrect.
E. The limousine driver waited for almost an hour before deciding -> "that" is needed to introduce another clause. Incorrect.
So, I think B.