Notice: Undefined index: elements in block_theme_suggestions_block()
You are not supposed to use the block template like this. This will be added automatically and it will be done so one level higher in the render array structure.

Check other block plugins, none of them use #theme like this, like SystemBrandingBlock::build()

You have two options:


Define the block template suggestions like system_theme() does it and then overidde the output there. (the first in the list is the one for the branding block linked above, so you can easily connect the two things)
Make your own template for the content within the block. It will be wrapped by a generic block template, so you don't have to worry about that at all.