L1: ¿Has almorzado? ¿Has almorzado? ¿O tienes?

Ambos están bien, tienen significados diferentes. El primero enfatiza si ha comido y el segundo enfatiza si ha comido ahora.

El tiempo pasado expresa acciones o estados que ocurrieron en un momento determinado del pasado, acciones habituales pasadas y habilidades pasadas del sujeto.

El tiempo presente perfecto expresa acciones ocurridas en el pasado que tienen un impacto en el presente, y acciones o estados que continúan desde el pasado hasta el presente.