Truncated MvN absolutely exists in principle, but I don’t know if it’s implemented in PyMC. @ricardoV94 ? If it does you could give it a try. It wouldn’t fix your ordering problem, though. See this discussion for some insight into how joint ordering changes marginal distributions.
Can you share any details of your transition/observation equations? My first instinct would be to model the hidden states in an unconstrained latent space, then transform that into the observation space. If you’re working with a particle filter this would essentially be exactly what we do when MCMC sampling.