With its strong reliance on suffixes, Esperanto is quite similar to Greek and Latin, which are the main contributors to the huge vocabulary of English. Therefore, in principle Esperanto could have a similarly large vocabulary.
In practice, Esperanto is generally not used for the kind of scientific and technical discourse that would cause it to actually extend its vocabulary significantly in this way. Esperanto speakers are of course free to make up words on the spot, with well established words such as malsanulejo showing what is possible. But (as in Latin and Greek) these words also tend to be ambiguous unless/until they become used generally. E.g., the normal meaning of malsanulejo is hospital, but it could just as well be a generalisation of sick room / sick tent / ....
Note that Interlingua, a naturalistic auxiliary language that is essentially the 'average' of the major Romance languages and English, has such a huge vocabulary. In fact, it is well known for having the largest dictionaries of all constructed and auxiliary languages. This is because Interlingua words aren't so much invented when needed as extracted from the relevant natural languages using a well defined process.