Angelfish are by nature shoaling fish, which means that they live in small groups. They establish an hierarchy within the group. They need space to do this, as sometimes the dominant male can be quite demanding and without a sufficient group and space, other fish will be picked on and often refuse to eat and may even be killed outright. A group should be no less than five, but this requires at minimum a 4-foot 55g tank.
If one has a breeding pair, they can work in a 29g on their own. But aside from this, I think you should forget angelfish. A single one is sometimes done, but I am not in favour of forcing fish into such an un-natural setting just to suit ourselves. To your other related questions, you can mix the various varieties (these have been derived from the same original species, Pterophyllum scalare, and thus all behave much the same). Tankmates need to be selected carefully; small linear fish tend to be seen as food by the angelfish, and some of the small fish can nip fins. Food is much the same as for other tropicals; good quality prepared flake and pellet, and live or frozen daphnia, brine shrimp and bloodworms.
There are plenty of options for a 29g (I have one of these in my fish room). Giving us your tap water parameters (GH and pH) will help us to suggest suitable fish.
Byron.