The answers are no and no. Being dimensionless or having the same dimension is a necessary condition for quantities to be "compatible", it is not a sufficient one. What one is trying to avoid is called category error. There is analogous situation in computer programming: one wishes to avoid putting values of some data type into places reserved for a different data type. But while having the same dimension is certainly required for values to belong to the same "data type", there is no reason why they can not be demarcated by many other categories in addition to that.
Newton meter is a unit of both torque and energy, and joules per kelvin of both entropy and heat capacity, but adding them is typically problematic. The same goes for adding proverbial apples and oranges measured in "dimensionless units" of counting numbers. Actually, the last example shows that the demarcation of categories depends on a context, if one only cares about apples and oranges as objects it might be ok to add them. Dimension is so prominent in physics because it is rarely meaningful to mix quantities of different dimensions, and there is a nice calculus (dimensional analysis) for keeping track of it. But it also makes sense to introduce additional categories to demarcate values of quantities like torque and energy, even if there may not be as nice a calculus for them.
As your own examples show it also makes sense to treat radians differently depending on context: take their category ("dimension") viz. steradians or counting numbers into account when deciding about addition, but disregard it when it comes to substitution into transcendental functions. Hertz is typically used to measure wave frequency, but because cycles and radians are officially dimensionless it shares dimension with the unit of angular velocity, radian per second, radians also make the only difference between amperes for electric current and ampere-turns for magnetomotive force. Similarly, dimensionless steradians are the only difference between lumen and candela, while luminous intensity and flux are often distinguished. So in those contexts it might also make sense to treat radians and steradians as "dimensional".
In fact, radians and steradians were in a class of their own as "supplementary units" of SI until 1995. That year the International Bureau on Weights and Measures (BIPM) decided that "ambiguous status of the supplementary units compromises the internal coherence of the SI", and reclassified them as "dimensionless derived units, the names and symbols of which may, but need not, be used in expressions for other SI derived units, as is convenient", thus eliminating the class of supplementary units. The desire to maintain a general rule that arguments of transcendental functions must be dimensionless might have played a role, but this shows that dimensional status is to a degree decided by convention rather than by fact. In the same vein, ampere was introduced as a new base unit into MKS system only in 1901, and incorporated into SI even later. As the name suggests, MKS originally made do with just meters, kilograms, and seconds as base units, this required fractional powers of meters and kilograms in the derived units of electric current however.
As @dmckee pointed out energy and torque can be distinguished as scalars and pseudo-scalars, meaning that under the orientation reversing transformations like reflections, the former keep their value while the latter switch sign. This brings up another categorization of quantities that plays a big role in physics, by transformation rules under coordinate changes. Among vectors there are "true" vectors (like velocity), covectors (like momentum), and pseudo-vectors (like angular momentum), in fact all tensor quantities are categorized by representations of orthogonal (in relativity Lorentz) group. This also comes with a nice calculus describing how tensor types combine under various operations (dot product, tensor product, wedge product, contractions, etc.). One reason for rewriting Maxwell's electrodynamics in terms of differential forms is to keep track of them. This becomes important when say the background metric is not Euclidean, because the identification of vectors and covectors depends on it. Different tensor types tend to have different dimensions anyway, but there are exceptions and the categorizations are clearly independent.
But even tensor type may not be enough. Before Joule's measurements of the mechanical equivalent of heat in 1840s the quantity of heat (measured in calories) and mechanical energy (measured in derived units) had two different dimensions. But even today one may wish to keep them in separate categories when studying a system where mechanical and thermal energy are approximately separately conserved, the same applies to Einstein's mass energy. This means that categorical boundaries are not set in stone, they may be erected or taken down both for practical expediency or due to a physical discovery.
Many historical peculiarities in the choice and development of units and unit systems are described in Klein's book The Science of Measurement.
Best Answer
This is analogous to the definition of an empty product in mathematics. For a finite non-empty set $S=\{s_1,\ldots,s_n\}$, the product over $S$ can be defined as $$\prod_{s\in S}s=s_1\times \cdots\times s_n.$$ For such a product you'd want disjoint unions to map into products: if $R\cap S=\emptyset$, then you want $\prod_{x\in R\cup S}x=\left(\prod_{s\in S}s\right) \times \left(\prod_{r\in R}r\right)$, but for this to make sense you want to be able to handle the empty set, and the only way to make the rules consistent is to set $$\prod_{s\in\emptyset}s=1.$$ This essentially says: if there's nothing to multiply, the result is one. (Similarly, empty sums are defined to be zero, for the same reason.) In the case in hand, you could simply say if there are no units to multiply, then you get one. As Luboš points out, this is the
harmlessonly consistent choice, as multiplying by one does not change the quantity.Moreover, this empty-product intuition can be carried out to a full formalization of physical dimensions and units as a vector space. The whole works is in this answer of mine, but the essential idea is that positive physical quantities form a vector space over the rationals, where "addition" is multiplication of two quantities and "scalar multiplication" is raising the quantity to a rational power. This vector-space formalism is precisely the reason why dimensional analysis often boils down to a set of linear equations. Moreover, in this vector space the 'zero' is the physical quantity and unit $1$ - neither vector space makes sense unless $1$ is both a quantity and a unit.
Ultimately, of course, it boils down to convention, so people can just say "I'm going to do this in this other way" and they won't be "wrong" as such. However, in general, the consistent way to assign things is to say that dimensionless quantities have dimension $1$ (modulo whatever square bracket convention you're using) and unit $1$.
To back this up a bit, for those that care about organizational guidance, the BIPM publishes the International Vocabulary of Metrology, which states (§1.8, note 1) that
This is essentially the same in the ISO document, which has been superseded by ISO 80000-3:2009 (paywalled, but free preview available), which has an essentially identical entry in §3.8.
Finally, and as a response to some of the comments by Luboš Motl, this applies to the term "physical dimension" as understood by the majority of physical scientists.
There is also an alternative convention, used in high-energy contexts where you work in natural units with $\hbar=c=1$, in which you're left with a single nontrivial dimension, usually taken to be mass (=energy). In that context, it is usual to say a quantity or operator has "dimension $N$" to mean that it has mass dimension $N$ i.e. it has physical dimension $m^N$, but since there's only ever mass as the base quantity it often gets dropped. However, this is very much a corner case with respect to the rest of physical science, and high-energy theorists are remiss if they forget that their "dimension $N$" only works in natural units, which are useless outside of their small domain.