Place the eggs in a saucepan and cover them with cold water by about an inch. Bring the water to a boil over medium-high heat, then cover the pan, turn off the heat, and let the eggs sit for 10 to 12 minutes. Transfer the eggs straight into a bowl of ice water and let them cool completely.
While the eggs cool, finely chop the onion, celery, and fresh herbs. Slice the avocado in half, remove the pit, and scoop the flesh into a medium bowl. Add the lemon juice right away and mash the avocado with a fork until it is mostly smooth with a few small chunks left for texture.
Peel the eggs and chop them into small pieces, then add them to the bowl with the avocado. Add the mayonnaise, Dijon mustard, chopped onion, celery, herbs, salt, black pepper, and paprika if using. Fold everything together gently with a spoon or spatula until the mixture looks creamy and evenly combined.
Serve the egg salad on bread slices with optional lettuce and tomato slices.