I ran into this exact issue when updating an old CA database after running the utf8 upgrade. I got around it by running the CA update first, then the utf8 upgrade.
The root cause: varchars have a max of 16383 in utf8mb4, but in older character sets, the max is much larger. The older update scripts weren't coded with utf8mb4 in mind, so they use the value 16384, which was perfectly reasonable at the time.
If you don't have a backup without the utf8 upgrade, you might be able to hack around this by modifying the update script at support/sql/migrations/169.sql then running the update. It has a bunch of varchar(16384) definitions that you could change to varchar(16383) to get past this.