I think there are a few possibilities. First, your MultiT function could work, but you'd have to use str(T(text)) instead of T(text). The reason is that T() returns a lazyT object, not the translated string (it isn't translated until rendering). You can force the translation by calling the lazyT.__str__ method via str(T(text)).
Another option is to define your own T() objects for each language and force them to use the specific language. For example:
In a model file:
from gluon.languages import translator
enT=translator(request)
enT.force('en-en')
esT=translator(request)
esT.force('es-es')
In a view:
{{=esT('House')}} / {{=enT('House')}}
It would probably be easy to abstract the above by defining a class that stores multiple T objects and lets you easily add additional ones.
A third option might be to create a special multi-language translation file. For example, you could create a file called es-en.py, which could include translations such as:
'House': 'Casa / House'
Hope that helps.
Anthony