Ok. You accidentally signed up for a different plan than you intended. That is not a "billing error". A mistake, or accident, or "error" on your part is just something that needs straightening out with Dreamhost.
Well, you could use a calculator, or a pencil and paper, to subtract the amount of the promo code from the price of the plan you are signing up for
Wow. It never ceases to amaze me the things some will complain about - an L1 plan for $22.40 (119.40 - 97.00 if max promo was used) for a whole year is a "mess" because the user can't figure out how to manage his browser and complete a sign up form. I can tell you are frustrated, but would you really rather not have that big discount? Hey, the form would be simpler and it would be really easy to tell how much it cost - just pay the "full up" quoted price so there is no discount to compute!
Sure there is. Enter it, along with the info you included in this post, into a Support Ticket (contact support via this link)
Yep. Dreamhost handles all this stuff via the Control Panel support ticketing system, and does not provide telephone contact numbers for "real people". It's unfortunate you didn't realize this before you signed up - if those kinds of contacts are important to you, you may not be happy at Dreamhost.
Of course not! The quickest way for that to happen is via the Support ticket system, though you could continue to aggravate yourself over not being able to "call" anyone about it - I just don't see how that is going to help it get resolved any faster.
The "why" is because Dreamhost has chosen to do this stuff in writing, via the support ticket system. There are probably a number of reasons why they chose to do it this way. As for whether or not there should be a chat link, I'm sure some people think that there should be (there is a "on again / off again" chat system in beta testing on the Control Panel support pages)
I suppose that could eventually happen, but you will get quicker results via the Control Panel than you will complaining about a billing error on the customer-to-customer forums while waiting for that call.
While Dreamhost staff does occasionally pop in here, it's not something you can count on; if you need something fixed, a support ticket is the way to go. Good luck, I hope you get it sorted out soon.