Simon, usually it depends on the fry individually when you can tell the difference. By 2-3 months, you can tell...some will be bigger,some will be smaller. As for separating, most people start to jar males as soon as they see aggression in the larger boys. Then again,some people jar all of the fry individually at 2-3 months. It depends on your preference, the size of the fry, number of fry, etc.
I also wanted to add on to the Veil-tail issue... VT's do not breed true. You can get any odd combination of colors and sizes and patterns (mostly multi-colored results). For some one who really wants to get into breeding and spend that much money,you might as well go big, get a couple of super nice well-matched breeding pairs from a reputable private breeder and possibly get some MONEY out of the breeding. You probably won't cut even being a hobby breeder either way,but it is probably more fun for you to be able to sell some babies for more than 5 cents each... when you're putting SO much effort into this, you might as well plan out the breedings and pairings very carefully and actually be able to predict and plan the colors and fins that will result.
Also,another question,do you know the ages of your breeders? Ideally, Bettas should be bred between 6 and 12 months. Some people say 4 months, but I've heard that Bettas that young tend to eat the eggs or not pick them up to put them in the bubblenest. 12 months is the absolute max. If you got your Bettas from a random LPS/LFS, you really don't have a way of knowing the true age of your Bettas. They could be too young or too old and they come from lines and strains unknown to you.