Keep the wet stuff away from the bread
The soggy sandwich problem is solved by keeping moisture away from the bread until you actually bite into it.
Think about what makes a sandwich soggy: wet ingredients (tomatoes, pickles, mayo) soaking into the bread over four hours. So you have two moves. Either make it so the wet stuff never touches the bread, or pack the wet stuff separately and assemble at lunch. The first is easier.
Spread something fatty on every slice of bread before you add anything wet. Butter or a full layer of mayo works great — it reads as a waterproof seal. Then put a barrier layer of lettuce or cheese between the bread and the wet fillings. Tomatoes and pickles go in the middle, nestled against the lettuce or cheese, not against the bread. If you use peanut butter, that’s already a barrier.
The second approach is for anything really wet like tuna salad or egg salad. Don’t build that sandwich in the morning. Put the filling in a separate little container and pack the bread flat. Assemble at your desk. Takes ten seconds and always comes out perfect. Also, an ice pack in the lunchbox helps a ton because condensation from a warm environment is a sneaky source of sogginess.
Moisture is the enemy. Stop letting it touch the bread and you can pack any sandwich the night before.
