Do bras and kets have dimensions?

This is a very interesting question. I don't know if there is a general and definitive answer, but I'll try to make some comments. I apologize if this ends up rambling; I'm finding this out as I write this answer.

Operators have dimensions, since their eigenvalues are physical quantities. For bras and kets it gets more complicated. First, you cannot in general say that they are dimensionless. To see why, consider a state with a certain position $|x\rangle$. Since $\langle x | x' \rangle = \delta(x-x')$ and the Dirac delta has the inverse dimension of its argument, it must be that $[ \langle x | ] \times [ | x \rangle ] = 1/L$. A similar relationship holds for momentum eigenstates. Of course, there are higher powers of $L$ in higher dimensions.

However, consider an operator with discrete spectrum, such as the energy in an atom or something like that. Then the appropriate equation is $\langle m | n \rangle = \delta_{mn}$, and since this delta is dimensionless, bras and kets must have inverse dimensions. This gets even weirder when you consider that the Hamiltonian for a hydrogen atom has both discrete and continuous eigenvalues, so the relationship between the bras and the kets' dimensions will be different depending on the energy (or whatever physical quantity is appropiate).

We have the equation $\langle x | p \rangle = \frac1{\sqrt{2\pi\hbar}} \exp(ipx/\hbar)$. I at first thought that this combined with $[\langle x |] \times [| p \rangle ] = [\langle p |] \times [| x \rangle ]$ would allow us to find the dimensions of $|x\rangle$ (and everything else), but it turns out that the normalization conditions of $|x\rangle$ and $|p\rangle$ force the dimensions of $\langle x | p \rangle$ to come out right. We can find that $[|p\rangle] = \sqrt{T/M} [|x \rangle]$, but we can't go any further. Similar relationships will apply for the eigenstates of your favourite operator.

Any given ket is a linear combination of eigenkets, but again there are subtleties depending on whether the spectrum is discrete or continuous. Suppose we have two observables $O_1$ and $O_2$ with discrete spectrum and eigenstates $|n\rangle_1$ and $|n\rangle_2$. Any state $|\psi\rangle$ can be expressed as a dimensionless linear combination of the eigenstates (dimensionless because since $\langle n | n \rangle = 1$, the squares of the coefficientes make up probabilities): $|\psi\rangle = \sum_n a_n |n\rangle_1 = \sum_n b_n |n\rangle_2$. This implies that the eigenkets of all observables with discrete spectrum have the same dimensions, and likewise for the eigenbras.

It gets trickier for observables with continuous spectrum such as $x$ and $p$, because of the integration measure. We have $|\psi\rangle = \int f(x) |x\rangle\ dx = \int g(p) |p\rangle\ dp$. $\langle \psi | \psi \rangle = 1$ implies $\int |f(x)|^2\ dx = 1$, so that $[f] = 1/\sqrt{L}$ and likewise $[g] = \sqrt{T/ML}$. This should be no surprise since $f$ and $g$ are Fourier transforms of each other, with an $1/\sqrt{\hbar}$ thrown in. From this we can deduce $[|p\rangle] = \sqrt{T/M} [|x \rangle]$, which we already knew, and $\sqrt{L} [|x \rangle] = [|n \rangle]$.

The conclusion seems to be the following. All eigenkets with discrete eigenvalues must have the same dimensions, but it looks like that dimension is arbitrary (so you could take them to be dimensionless). Furthermore, normalized states have that same dimension. Eigenstates with continuous spectrum are more complicated; if we have an observable $A$ (with continuous eigenvalues) with eigenvalues $a$, then we can use the fact that $|\psi\rangle$ can be written either as an integral over eigenstates of $A$ or as a sum over discrete eigenstates to find that $\sqrt{[a]} [|a\rangle] = [|n\rangle]$, where $|n\rangle$ is some discrete eigenket. So once you fix the dimensions of one ket, you fix the dimensions of every other ket.