При открытии балуна в него передается указатель на карту. А почему бы не передавать дополнительно объект контекста, если балун открывается для него, например Placemark? Вообще, необходимость навешивать обработчик на каждый экземпляр в группе объектов мне представляется не самым лучшим решением. Было бы интереснее навешивать единственный обработчик на группу/карту, в который дополнительным параметром передавался бы объект контекста.
Или я отстал от жизни, и это уже реализовано как-то по другому?
Конкретный пример: на карте множество меток, которые создаются и удаляются по мере перемещения области отображения. Общее количество меток может переваливать за тысячу. Создавать контент балунов заранее в этом случае накладно. Передача значений через MetaDataProperty и использование шаблонов перестает спасать в ситуации, когда требуется условная логика, т.е. некоторые блоки в балуне попросту не должны появляться вообще, если данные пустые. Соответственно, нужно перехватывать момент клика по метке, генерировать контент и открывать балун ручками.