To put this into perspective, a 2 move solve is so ridiculously incredibly unlikely, and we're not talking one in a billion unlikely. We're talking in the order of a billion times less likely than that. If you had a unique scramble for each star in the Milky Way galaxy, theres still a better than 999,999 in a million that you would not be able to solve any of them in 2 moves.
I do think the limit should be higher for 3x3 though, but more for thoroughness than I think it will ever actually happen.
Although I would like some insight on how TNoodle handles this (especially the "equal probability for each state" part, which sounds like a 2-move solution should be included in the pool of possible scrambles).
The cool thing is that TNoodle is open source, so if you know some programming, you can dig in the code and see exactly how it works. It's not the most straight forward code to read, but it's not impossible to decipher. To understand the scrambling, you'd want to look at the .java files in the scrambles/src/puzzle/ folder. Specifically, all puzzles with limits different from the default define a variable wcaMinScrambleDistance, in accordance with the limits in the regulations.
The only one that's hard to figure out is the limit for 3x3 because of the way it's set. Fortunately there's an automatically generated readme that displays the limits for all puzzles. When you run TNoodle, there's a question mark in the top right corner. If you click that, you'll see what limits it was using, and at the moment, it uses 2 moves for 3x3.
Regarding selecting states so that each state has equal probability, yes scrambles under the limit are originally included in the pool of possible scrambles. It essentially has a way of numbering every single possible unique state (including those that can be solved under the move limit, and yes, even the solved state) from 0 to n and picks a random number.
Here's the code that generates the state for pyraminx. If it turns out the state it picked can be solved in fewer moves than the limit for that puzzle, it scraps that state, picks a new one and tries again.
That doesn't affect the relative probabilities of the valid states at all. Imagine if you roll a dice, and if you roll a 1, you get to roll again until you get something other than 1. The probabilities of rolling a 2, 3, 4, 5 or 6 are still all equal.
It is perfectly possible that the program will keep generating the scrambles under the limit which would basically cause the program to freeze. But that's so incredibly unlikely you can virtually guarantee that that won't happen. Your computer's far far more likely to be struck by lightning while generating the scrambles.