This post https://jacquesheunis.com/post/bounded-random/ from 2021 contains some newer techniques.
Somewhere in my github there's an indefinite-width multiply that only adds bits while there's a risk of carry into the 1's digit; the check for that is quite cheap.