There are problems with your config overall, you failed to properly add CPU input/output affinity, this will kill your router's CPU when deploying large tables. in/out affinity mode should match CPU model of your router for all BGP peers including iBGP.
Here what I will do, I will share my config from production running on a CCR1072, where CPU has massive CPU cores regarding affinity. MikroTik ROSv7 has templates now to autoconfigure certain values when you create a fresh peer. And also some sample route filters will be shared.
We will assume I want to export only aggregates of /21 and /22 size for this example, because in real life you can have /21 aggregate, /22, /23 etc in a single aggregate list.
#Aggregate route#
/ip/firewall/address-list
add address=100.64.0.0/21 list=bgp-networks
add address=10.0.0.0/22 list=bgp-networks
/ip route
add blackhole comment="Blackhole route (Public Aggregate)" disabled=no dst-address=100.64.0.0/21
add blackhole comment="Blackhole route (Public Aggregate)" disabled=no dst-address=10.0.0.0/22
/routing bgp template
set default as=123 disabled=no hold-time=1m input.affinity=alone keepalive-time=20s output.affinity=alone .network=bgp-networks .redistribute=bgp remove-private-as=yes router-id=100.64.0.0 routing-table=main
/routing bgp connection
add address-families=ip as=123 disabled=no hold-time=1m input.affinity=alone .filter=Transit-IN-IPv4 keepalive-time=20s local.address=192.168.0.0 role=ebgp-customer name=IPv4-Transit output.affinity=alone .filter-chain=Transit-OUT-IPv4 .network=bgp-networks .redistribute=bgp remote.address=192.168.0.1 .as=1234 remove-private-as=yes router-id=100.64.0.0 routing-table=main templates=default
/routing filter rule
add chain=Transit-IN-IPv4 disabled=no rule="if (dst in not_in_internet) {reject} else {set pref-src 100.64.0.0; accept}"
add chain=Transit-OUT-IPv4 disabled=no rule="if (dst in bgp-networks && dst-len==21 || dst-len=22) {accept} else {reject}"
I use the same logic on Juniper, we've not seen any problems. The only difference is syntax/CLI/vendor and lack of auto route aggregation on MikroTik.
Also my RouterID = loopback IP of the device for simplicity.