You cannot use ago like that. You could say "They were caterpillars months ago."
But the word can only be used in reference to a specified period of time.
"They were caterpillars before," is fine.
But if you want to use "once," then you it is better to use this word before the noun ("They were once caterpillars")
For sentence four, this sentence would usually be plural and, therefore, we would not use an indefinite article. It should read:
"Butterflies are interesting insects."
In sentence 5, you need "a," before lily.
In sentence 6, the verb "to be," must agree, in number with the noun:
"My favourite flowers are lilies."