My problem is that my wallet spent coins from this unconfirmed transaction.
Which wallet do you use? I sometimes spend unconfirmed change, but only from my own transactions. I would never spend an incoming transaction before it's confirmed.
The coins from the first transaction make up only a fraction of what I spent in this one. Are the coins involved in my second transaction held hostage until the first transaction confirms?
You could abandon this transaction, and try to broadcast a new transaction without the unconfirmed input. How you can do this, depends on the wallet you use.
My advice (in general) is to Enable coin control features and always manually choose which inputs to use for a transaction. If you know what you're doing, this puts you in complete control.
Can I spend the confirmed coins in the second transaction's input list even though they are sitting on the second unconfirmed tx?
Maybe. Dropping the transaction and double spending the other inputs normally works, but normally you'd do that to a transaction with a low fee.
If my wallet didn't use unconfirmed coins, then this whole thing never would have happened.
Correct.
And a final question, will the first transaction ever be confirmed anytime soon?
Fees for a fast transaction have been relatively low today. If miners find a few blocks with not much time in between, it can drop low enough to confirm. In general fees are lowest on Sunday, so it could confirm in 2 days.