Guppies and their fries, their babies, eat mostly - Duckweed, Elodea, and Algae.
I hope this helps!
swordtails
platy and swordtail are some beginners.
Guppies don't lay eggs. They are livebearers.
No other food than dead fish.
Angelfish, fighting fish and other bigger fish would. They would do it more often too if the guppy looked weak or less strong than other guppies.
The puffer loves live food and will eat anything smaller than it is, it is one of the few freshwater fish that has teeth.
Oscars are the breed of fish that mate the most. However, guppies and trigger fish also mate much more than other breeds of fish.
1 inch of fish per gallon so you about 18 but you will have the guppies eaten or the goldfish's fin bitten off as goldfish like to eat fish that are smaller than them (other than goldfish) and guppies are fin nippers so I would be careful or not keep them together good luck
I doubt that they can breed, a lot more depends on if two fish can breed than just their size, as far as I know guppies can only breed with other guppies.
If you live in The U.S.A. using live fish except for guppies is illegal or at-least where I live. Other than that I really have no idea.
Guppies are a community fish and are best kept in odd numbered groups with more females than males; for example, a group of 3 guppies with 2 females and 1 male. The reason for a higher female to male ratio is because males will fight with each other for matting rights to the females.
Unless you have a very special "line Bred" type of guppy it is very difficult to sell them for other than food. I have always fed any excess of young livebearers to my larger carnivorous fish like Oscars and other Cichlids.