Ufffff muchísimas gracias, más que impresionante el remplazar DISTINCT por GROUP BY
Retocando un poco e hecho esto y el resultado de momento es perfecto:
Código MySQL:
Ver original `articulos`.`id`,
`articulos`.`ref`,
`articulos`.`titulo_1`,
`articulos`.`id_iva`,
`almacenes`.`id` `id_almacen`,
`almacenes`.`codigo`,
`almacenes`.`nombre`,
IF(`stock`.
`concepto` = 'EuroWin', ROUND(`stock`.
`precio1`,2), '') `precio1`, `articulos`.`precio1` `articulo_precio1`,
`articulos`.`create_user`,
`articulos`.`create_tienda`,
`iva`.`iva`,
`precio_fijo`
`stock`
INNER JOIN `articulos` ON `stock`.
`id_articulo` = `articulos`.
`id` INNER JOIN `almacenes` ON `stock`.
`id_almacen` = `almacenes`.
`id` LEFT JOIN `articulos_preciofijo` ON `stock`.
`id_articulo` = `articulos_preciofijo`.
`id_articulos` `stock`.`id_almacen`