Rummynose tetras get to be about 2", cardinal tetras get to be 2" as well, as do otos. If we use the "inch per gallon" rule, you already have 50" of fish in 29 gallons of water (or you will when they're full grown). A betta will add around 3" to the tank, thus bringing it to a grand total of 53" in 29gal. I know the "inch per gallon" rule is poo-pooed by a lot of people, but I think it's a good general rule of thumb.
Since tetras, otos, and bettas are all relatively clean fish (as opposed to goldfish and oscars, for example) even an overstocked tank can be clean. You will just have to do more water changes and vacuum the gravel more often. You should watch your ammonia carefully, and do water changes as applies. As your tank is now, you may want to get rid of some of the tetras (most LFS will take them in exchange for plants, different fish, or store credit).