I have mapped smallRNAs between 18-24 nts without a problem. But it depends on what you are sequencing and your library size. If you sequenced mRNAs from a library of 300 nt fragments, then short reads (e.g. < 40 nts) could be from degraded mRNAs and not the real genes. So you should set a size cut-off during read trimming.
You want to have 100bp. Everything below might lead to issues with mappability. Especially if you are having a repeat rich genome or a de novo assembly.
In addition, Tophat might not be the best choice as it is very sensitive to SNPs. Ie. does not map reads in highly heterozygous sites. I think STAR or GSNAP might be a better fit and are faster.