You would do this with a stack block and 2 rows.
In WP v6.1 and Below
The missing part though, as that because the cover block does not use flex layout like the group block does, there’s no way to put the extra height in that you need to separate the menu from the title.
So instead, insert a spacer block between the 2 rows:
<!-- wp:cover {"url":"https://example.com/wp-content/uploads/1/1901/1/example.jpg","id":26,"dimRatio":50,"align":"full"} -->
<div class="wp-block-cover alignfull"><span aria-hidden="true" class="wp-block-cover__background has-background-dim"></span><img class="wp-block-cover__image-background wp-image-26" alt="" src="https://example.com/wp-content/uploads/1/1901/1/example" data-object-fit="cover"/><div class="wp-block-cover__inner-container"><!-- wp:group {"align":"full","layout":{"type":"flex","orientation":"vertical","verticalAlignment":"space-between","justifyContent":"stretch"}} -->
<div class="wp-block-group alignfull"><!-- wp:group {"layout":{"type":"flex","flexWrap":"nowrap","justifyContent":"right"}} -->
<div class="wp-block-group"><!-- wp:paragraph -->
<p>I was going to be a menu but I changed my mind</p>
<!-- /wp:paragraph --></div>
<!-- /wp:group -->
<!-- wp:spacer {"height":"226px"} -->
<div style="height:226px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->
<!-- wp:group {"layout":{"type":"flex","flexWrap":"nowrap"}} -->
<div class="wp-block-group"><!-- wp:heading -->
<h2 class="wp-block-heading">I'm a heading</h2>
<!-- /wp:heading --></div>
<!-- /wp:group --></div>
<!-- /wp:group --></div></div>
<!-- /wp:cover -->
WP v6.2+
v6.2 lets use drop the spacer block by setting a minimum height on the stack block!
<!-- wp:cover {"url":"https://example.com/wp-content/uploads/1/1901/1/example.jpg","id":26,"dimRatio":50,"align":"full"} -->
<div class="wp-block-cover alignfull"><span aria-hidden="true" class="wp-block-cover__background has-background-dim"></span><img class="wp-block-cover__image-background wp-image-26" alt="" src="https://example.com/wp-content/uploads/1/1901/1/example.jpg" data-object-fit="cover"/><div class="wp-block-cover__inner-container"><!-- wp:group {"align":"full","style":{"dimensions":{"minHeight":"600px"}},"layout":{"type":"flex","orientation":"vertical","verticalAlignment":"space-between","justifyContent":"stretch"}} -->
<div class="wp-block-group alignfull" style="min-height:600px"><!-- wp:group {"layout":{"type":"flex","flexWrap":"nowrap","justifyContent":"right"}} -->
<div class="wp-block-group"><!-- wp:paragraph -->
<p>I was going to be a menu but I changed my mind</p>
<!-- /wp:paragraph --></div>
<!-- /wp:group -->
<!-- wp:group {"layout":{"type":"flex","flexWrap":"nowrap"}} -->
<div class="wp-block-group"><!-- wp:heading -->
<h2 class="wp-block-heading">I'm a heading</h2>
<!-- /wp:heading --></div>
<!-- /wp:group --></div>
<!-- /wp:group --></div></div>
<!-- /wp:cover -->
Flex controls for justifying and direction would be very nice on the cover block though, especially with the minimum height controls coming in WP 6.2, you should head to the Gutenberg GitHub repository and open an issue for that if one isn’t already open.