From a fundamental perspective, there are no units and dimensions. A system of units where some units are assigned different dimensions to, amounts to rewriting the fundamental dimensionless variables in all the equations in terms of rescaled variables. If we introduce 6 independent scaling variables to rescale 6 variables with then formally that becomes equivalent to using a system of units where there are 6 fundamental dimensions.
A dimensionless quantity is therefore a quantity that stays invariant under the rescaling by the scaling variables. Whether a quantity is dimensionless or not is then entirely a subjective matter of choosing the way we want to do the rescaling.
Dimensional analysis in SI units corresponds to taking the scaling limit that corresponds to the classical limit. Given physical quantities $X_1$, $X_2$, ..,$X_n$ and $Y$, we can always get to a dimensionally correct equation relating $Y$ to the $X_j$ via any arbitrary function $f$ of $n$ variables by writing down the equation:
$$\frac{Y}{Y_p} = f\left(\frac{X_1}{X_{1p}},\frac{X_2}{X_{2p}},\ldots,\frac{X_n}{X_{np}},\right)$$
where $Y_p$ and the $X_{jp}$ are the Planck units of the various physical quantities. In natural units these constants are equal to 1. So, if we can make any arbitrary nonsensical equation dimensionally correct, then how can dimensional analysis be useful in practice?
The reason is, of course, that we demand that certain constants may not appear on the equation. For example if we have a system in the nonrelativistic regime then we demand that $c$ is not allowed to appear in the equations. We can translate this requirement in terms of working in a 100% dimensionless way from natural units as saying that we introduce the dimensionless scaling constant $c$ and consider the scaling limit of $c$ to infinity. Then $c$ cannot appear in a relation between accessible physical quantities that remains valid in that scaling limit.
So, it's then all about scaling, dimensionless should be interpreted as being invariant under scaling. However, this is then a subjective notion as the way you choose to scale is entirely up to you. An example of this is to find the energy levels of the hydrogen atom by taking the classical limit in a nonstandard way. We can out $c$ back in our relativistic equations and then we get $E = m c^2$. We then need to get rid of $c^2$, and we can do that by putting it back in other physical quantities. If we do that in the fine structure constant then we see that a factor $\frac{1}{c}$ appears in there.
However, in SI units the electromagnetic quantities also depend on c. But we are not beholden to go down the SI route. We're only going to put $c$ back, which amounts to scaling the charge relative to how SI units are defined. We then see that up to a constant the energy levels of the hydrogen atom should be proportional to $\alpha^2 m c^2$.
Derivation of the classical limit for kinetic energy from special relativity in natural units
To demonstrate how the above ideas work in practice, let's work out a simple example. We want to derive the classical limit of the relativistic kinetic energy, but are going to stick to natural units, so we are not allowed to refer to SI units and insert c's in equations without motivating in the scaling that we want to perform.
The classical limit is what we get when we consider the dynamics of objects moving very slowly relative to each other, in the limit of zero relative velocity. But we cannot simply take the limit of zero velocity, because in the limit nothing will happen and the kinetic energy is simply zero in that limit.
What we really need to do is consider what happens at slower and slower velocities when we also rescale the time variable so that in terms of the rescaled time variable, the system under consideration evolves just as fast.
The relevant equations for kinematics in special relativity are the expression for the energy:
$$E = \gamma m$$
and the momentum:
$$\vec{p} = \gamma m \vec{v}$$
where
$$\gamma = \frac{1}{\sqrt{1-v^2}}$$
The motion of a particle at velocity v in the x-direction starting at t = 0 at $x = 0$ is described by $x = v t$. We can then rescale the velocity by putting $v = \frac{v'}{c}$, where $c$ is considered to be an arbitrary rescaling parameter. But for fixed $v'$ in the limit of $c$ to infinity, the particle then doesn't move in the $(x,t)$ coordinates.
So, to be able to follow the particle's motion all the way into the classical scaling limit of $c$ to infinity, we must then also rescale the time variable by putting $t = c t'$ and working in $(x,t')$ coordinates. We then have:
$$x = v t = \frac{v'}{c} t = v' t'$$
Similarly, if we consider a collision between objects and want to apply conservation of momentum, we must make sure that this remains well defined in the limit of $c$ to infinity. The momentum in terms of the rescaled velocity $\vec{v'}$ is:
$$\vec{p} = \gamma m \vec{v} = \frac{m\vec{v'}}{c\sqrt{1-\frac{v'^2}{c^2}}}$$
In the scaling limit of $c$ to infinity, the momentum at fixed v' will then tend to zero. To make sure we still have physical quantities representing momentum in this scaling limit, we are thus forced to work with a rescaled momentum, defined as:
$$\vec{p'} = c\vec{p}$$
Let's now consider the expression for the energy. It s convenient to work with the energy-momentum relation:
$$E^2 - p^2 = m^2$$
It then follows that:
$$E = \sqrt{m^2 + \frac{p'^2}{c^2}}\tag{1}$$
In the $c$ to in infinity scaling limit, the energy for fixed rescaled velocities becomes equal to the mass, which means that that in the scaling limit we have conservation of mass as an emergent conservation law. However, because this is independent of the velocity, we need t expand (1) to leading order at which we get a quantity that depends in the velocity to get to the kinetic energy. This yields the expression $T$ for the kinetic energy as
$$T = \frac{p'^2}{2 m c^2}$$
We must then define a rescaled kinetic energy as:
$$T' = c^2 T$$
In the c to infinity scaling limit, the total rescaled kinetic energy is then conserved.
Observers who live close to the scaling limit can then obtain the value of $c$ in their units by measuring he speed of massless particles like the photon. On natural units the speed is 1, and if time is measured in terms of $t'$, then the speed is $c$. The conversing factor between energy that for objects in rest equals the mass and rescaled energy leads to the $E = m c^2$ identity. We then see that the connection between mass and energy becomes lost in he scaling limit, which leads to conservation of mass as an idneodent conservation law in the scaling limit.