Can’t you just change the layouts with same name in different themes? Or make wrapper layouts that call some other layout and make those different in each theme?
I would suggest use same name as layout for the same view in different themes, why bother to mess around layout name at view level?
if you don’t like the default layout name, like ‘column1’ ‘column2’ you can create on called ‘my-very-unique-layout-name’ and have it in both themes with different design.
is that the whole purpose you use different themes?
The reason for ‘messing around with layouts in view level’ is that it is possible, that for example a product grid view in a webstore is using a 3 column layout (in theme_1), but if the user decide to switch to another theme (theme_2), which has its multiple layout types (including a 3 column one), BUT maybe in that theme the product grid view is prettier with 1 column layout, than with 3. Hope I explained it well and it do makes sense
Otherwise your idea is good, it seems to me that the best idea is to make multiple layouts with the same name for each theme like login_layout, product_details_layout, etc.