An Elite-C (24 GPIO pins) or surface-mounted ATmega32U4 (26 pins) should be enough.
You have only around 84 keys there, only that some of these have multiple alternative switch positions.
The Teensy 2.0 with 25 pins was used for the Phantom tenkeyless keyboard, which has a 17×6 matrix (23 GPIO pins) + 2 LEDs.
You could optimise a keyboard matrix by making the logical matrix closer to a square, i.e. the number of rows and columns closer to the square root of the number of keys.
The smallest theoretical matrix for a 84-key keyboard would thus be 10×9 = max 90 keys, 10+9=19 GPIO pins.
A more reasonable optimised matrix (easier to reason about
) would be to let each logical column map two physical columns: instead of 16×6 (22 pins) you would then need 8×12 => 20 GPIO pins.
BTW, Did you intend to have a 2u key in the top right corner, or did you intend to allow the Backspace key to be split?
BTW 2. To support the ISO layout, the left Shift would also need to be split into two keys.