One suggestion is to use with_entries as a replacement for the 'to_entries | map(...) | from_entries' pattern. For example:
jq '.metadata.annotations | with_entries(select(.key == "label1"))'
is equivalent to jq '.metadata.annotations | to_entries | map(select(.key == "label1")) | from_entries'