Language tags might also work for this (I don't really understand your use case).
A language tag will display a block of text in the appropriate language. The value it displays can be in a lexicon file, or in the database.
[[%LanguageStringKey? &language=`en` &namespace=`NameSpaceName` &topic=`TopicName`]]
The block stored in a single lexicon entry can be up to 64K, and AFAIK, it can contain HTML tags as well.
If you have a chunk with language tags in it, and Babel uses Contexts, you should be able to display them in the correct language if you create a culture_key Context setting with the two-letter language code and use the tags like this:
[[%LanguageStringKey? &language=`[[!++culture_key]]` &namespace=`NameSpaceName` &topic=`TopicName`]]
You'd have to use the same namespace name and topic name for all languages in organizing the lexicon strings.
Mind you, I've never tried any of this, but I think it would work.
If you're using FormIt, and you've created the Context Settings, I believe you could also use its language property: