the answer is Yes, you can. In your layout controller instance is available as $this. So you could define new controller class public member variable, set its value in action and access it like $this->varName in you layout file.
Yes I confirm that, also this is done "by design", because if some part of template is heavy depends on variables passed from controller - this should be part of some view, but not layout. Layout is supposed to be just decoration. Using widgets is best choice for layout-level data rendering.