tl;dr- Some of the common "definitions" of the Dirac delta function aren't mathematically rigorous, but rather conceptual. The confusion about units seems to come from these functions being taken more literally than intended. In reality, it's a unitless factor.
The Dirac delta function can be defined as $$\delta(x)=\frac{1}{2\pi}\int_{-\infty}^\infty e^{itx}dt$$ From this we see that the dirac function has units of $x^{-1}$.
This doesn't follow. The Dirac delta function produces a unitless value, typically used as a factor for some other term to zero out that term's value for most values of $x$.
Sources I can find for the momentum eigenvector ignore the units of the delta function without even mentioning.
They're not assigning units because the Dirac delta function itself lacks them.
###On the misconception about units cancelling Below in the comments, @BySymmetry explained the confusion as resulting from the observation that $$ \int \text{d}x{\delta}\left(x\right)f\left(x\right)=f\left(0\right), $$ where if we want the units to cancel, then we need ${\delta}\left(x\right)$ to have units of $x^{-1}$.
As Wikipedia notes:
Consequently, the delta measure has no Radon–Nikodym derivative — no true function for which the property $$ \int _{-\infty }^{\infty }f(x)\delta (x)\,dx=f(0) \int _{-\infty }^{\infty }f(x)\delta (x)\,dx=f(0) $$$$ \int _{-\infty }^{\infty }f(x)\delta (x)\,dx=f\left(0\right) $$ holds.[21] As a result, the latter notation is a convenient abuse of notation, and not a standard (Riemann or Lebesgue) integral.
-Dirac delta function, Wikipedia
In short, this equation is an "abuse of notation", not the actual definition of a Dirac delta function. So, the idea that it should have units of $x^{-1}$ based on this equation's just a misunderstanding.
Conceptually, the Dirac delta's just a device to make a function zero everywhere but at one point. It's fundamentally a $0$-or-$1$ multiplication factor, so it just lacks units. You can write up that definition however you like to make it fit into conventional mathematical notation, but at the end of the day, that's it.
###Example of the fallacy Having units implies that, if you change the units - say from meters to lightyears - then you need to insert a multiplication factor. But, if you calculate some value with a Dirac delta, then switch your unit of length, do you actually multiply by such a conversion factor? Doing so would be a mathematical mistake.
The issue's that a Dirac delta's meant to be over an infinitely small space, so assigning it proportionality through units doesn't make sense.