What gave you the idea that you can build this using 555s only? I mean: yes, a 555 is good enough to implement a NAND gate, so theoretically you could build MCU using those, and run whatever code you'd want to - but that's not what you had in mind, right?
A 555, used as an analog building block, has rather ephemeral memory: it does have some state, but this state is constantly changing, and can't be stabilized to form long-term memory.
I presume that you want the duty cycle to be stable over long periods of time. For that purpose, analog means of storing the duty cycle won't work - unless you went really overboard, like using an extremely low leakage capacitor-based storage with the "pick-up" circuit using ultra low bias current op-amp and Teflon standoff on the PCB, or a mechanical gyro as analog memory.
Instead, you'll need to store the duty cycle digitally.
Typically, you'd have a clock source that runs at the PWM frequency times the number of levels of brightness adjustment, an adjust clock divider so that pressing a button will adjust the duty cycle at a reasonable speed, an up/down counter storing and adjusting the duty cycle, and a toggle latch to store the direction of adjustment (since you want it to alternate with just one button).
The output section can be:
- "analog", where a DAC converts the duty cycle value to voltage, and a classic analog PWM section converts that voltage to a PWM waveform, or
- digital, with a magnitude comparator or a down counter to convert the duty cycle to a PWM waveform.
If you only need a few levels, then it'd be OK to cycle through them, and then the problem is slightly simpler: a Johnson counter could be used to select the brightness level, a simple resistor DAC would convert that to a voltage, and then your favorite voltage-driven PWM could convert it to a digital PWM waveform.
Now, don't misunderstand any of the above as discouraging an MCU-free approach. If your specs will be reasonable, then it's clearly possible to put it together using a few dirt-cheap 40xx or 74HCxx series chips. But that'll only work if you keep the specs aligned with what's easy to implement without an MCU. Most modern "pushbutton dimmer" circuits use a low pin count MCU that costs much less than a dollar. On price alone, you can't beat that. But if that MCU goes on back-order for half a year, what then? A more discrete design is less likely to suffer from supply chain disruptions, since with some care you can make it so a variety of substitute chips could be used in each position on the board. For some functions you can even use 40xx and 74HC as alternates, since they share pinouts.