Very interesting matter maybe.
If we restrict this question for a moment to abelian extensions of a number field (not just Q) in the presence of enough roots of unity, this question reduces to a question in Kummer theory: Can we realize this extension by taking a root/radical of a unit.
So when is this possible? This relies actually on the ramification/branching behaviour of our extension. For the radical equation X^n - a one can compute its discriminant and I've forgotten the precise result, but this shows us something like ramification can only come from divisors of n or prime divisors of a if I remember correctly; so if a is required to be a unit, this restricts the possibilities for ramification quite heavily.
Now this argument doesn't actually answer anything for you since over Q this Kummer argument is nearly void.
On the other hand, by Kronecker-Weber, over Q, even abelian ext lies in a cyclotomic one, and that's roots of unity, so units only.
Class field theory should help for a more general answer, but I fear I haven't paid attention enough to classes to say how. Problematically, it does not tell us too much about explicit generators of fields.
Over local fields we may still touch the question: Indeed, every extension can be obtained by adjoining a unit, this is not so hard to see. On the other hand, maybe this is irrelevant since local fields really have too many units to serve as a model case.
Finally, it occurs to me, going back to the Kummer case: Normally we use H^1(G_m) =1 (Hilbert 90) and basically you ask whether H^1(O*) = 1. This is somehow related to Iwasawa theory, but I forgot how, but I remember for sure that the latter statement can fail to be true.
Sorry, this is not an answer for sure and rather a wordy mess; but maybe helpful (certainly helpless :-) anyway.