Ottos do best in groups of 3 or more, danio do best in groups of 5 or more, and tetras do best in groups of 5 or more. That being said you should buy a larger tank to get rid of the overstocking problem and stock the afore mentioned fish to proper numbers.
I would look on craigslist.com and try to find a 30g-55g for el-cheapo. (It is common place on there for people to just want rid of a tank.) You could check out the classifieds section of your local paper also. If you could get a 30g you could move the danio, tetras, and ottos into that and do better for them. Your mollies could then be seperated. Females in the larger tank with the fish that should be eatting the fry (danio especially), and keep the male(s) and current fry in the 10g.
OR!
If you stop feeding your fish for 2-3 days, if the fry are small enough for them to eat, that will (again, if the fry are small enough) get them more of an urge to eat their young.
