> Both require estimating, which I feel like I'm getting worse at. The unknown unknowns kill my schedules.
Generally what I do is break the project down into a list of small tasks, then estimate the best possible case and the worst possible case for each. Unknowns and more people involved increase the worst case. Try to ask more questions to reduce the unknowns but after that you have to keep your worst case estimate in mind.
Why do you feel you're getting worse at it? You're always going to finish slightly above or below your estimates. If you're consistently too low though you're being too optimistic when estimating and should adjust, and/or you're not pinning down requirements enough.