En el contexto de tu consulta, la tabla2 es irrelvante, porque no estás consultando datos sobre la descripción del producto.
La consulta usada no devolvía datos por una consecuencia lógica: Estabas tratando de traer datos de tabla2, pero esta tabla dependía de si la tabla3 devolvía un producto_id válido. El problema es que lo que tu estabas tratando de encontrar eran los casos en que el campo t3.usuario_id es NULL, y si ese campo es NULL, también lo era t3.producto_id, por lo que la tercera tabla jamás devolvería datos.
¿Se entiende?
Para que un LEFT JOIN devuelva datos en un cruce de dos tablas, deberá haber datos relacionados entre la primera y segunda tablas. Pero si se hace un LEFT JOIN entre la segunda y la tercera tablas, sólo lo hará con aquellos de la segunda que sean valores no nulos.
Distinto es si hubieses hecho el LEFT JOIN entre la primera y la tercera tablas (pero hubieses obtenido un producto cartesiano).
PD: Lo que te propuso referenteweb no tiene ningún sentido, porque el LEFT JOIN no devuelve un caracter vacío sino NULL, y NULL no es un caracter vacío, es un puntero a la nada o estado no definido.