Preparing for move to utfbmb4 should I limit character length?
If you have a modern (e.g. Debian 10+) server installed fresh, you should be OK. If not, I believe these are the settings you want in your server config (e.g. /etc/mysql/mariadb.conf.d/50-server.cnf if you're using MariaDB on Debian)
innodb_large_prefix = 1
#https://mariadb.com/kb/en/library/innodb-system-variables/#innodb_file_format
innodb_file_format = barracuda
# https://mariadb.com/kb/en/library/innodb-system-variables/#innodb_file_per_table
innodb_file_per_table = 1
# Set default row format to a Barracuda one. COMPRESSED is useful on a
# per-table basis.
innodb_default_row_format = DYNAMIC

The large prefix is key here:

If set to 1, tables that use specific row formats are permitted to have index key prefixes up to 3072 bytes. If not set, the limit is 767 bytes.

The row formats allowed are DYNAMIC and COMPRESSED. (The latter can be very handy if you don't do many writes to a table with a lot of compressible data, e.g. activities, but that's probably a special case.)
So then you don't have to shorten your text fields.