First choice, and the only ones really suitable in this small a tank, are the "dwarf" species such as Corydoras pygmaeus (pygmy cory), C. hastatus (dwarf cory) and C. habrosus. I would suggest at least 9-10 of which species, or if you want to have two species, 5-6 of each species. One caution here though: all corys are better with a sand substrate, but these three species really do need it. They will not be at their best over gravel no matter what else. I have a 10g that contains just C. pygmaeus, as they are spawning regularly. I add dried oak leaves weekly as food for the fry, and I have various stages of fry in this tank permanently.
Beyond this, there are a few species of the "normal" sized corys that could work. Corydoras panda, C. similis, C. adolfoi (may actually be C. duplicareus, they are frequently mixed up), C. leucomelas, C. metae. There are others too. These are all able to reach around 2 inches, but interestingly often remain smaller. I would say 6-7 of one of these. Consideration of the filter is important for some, like C. panda which should have a bit more water current than the others; the "dwarf" species are fine with just a sponge filter.
If you can find them, the species in the genus Aspidoras are certainly suitable. Taxonomically, there are a few Corydoras species that may belong in this genus, so they are very similar in all respects. A group of 9-12. Also need sand.
As for plants, this depends a bit upon species. Most corys occur in watercourses devoid of plants, but having sand (or mud), dried leaves, and lots of wood branches and bogwood chunks. Floating plants work well to shade the light. Java Moss on the wood is ideal, as it is a site for spawning and infusoria food for fry. The pygmy chain sword is a good substrate plant. Corkscrew Vallisneria is good too.
Byron.