Hola,
Es una buena idea (y, quizás, la única sin modificar los datos originales), usar el código del producto.
Esto solo si el cod_linea tiene siempre el mismo formato (CODCATEGORIA+NUMERO).
Si son muchos productos y no-tantas categorías, te recomiendo primero cargar todas las categorías en un array, algo como:
Código PHP:
$categorias=array();
$result=mysql_query("select * from categoria");
while($row=mysql_fetch_array($result)) $categorias[$row['cod_categoria']]=$row['id_categoria'];
Luego, dentro del while y antes de insertar el nuevo registro, hacés:
Código PHP:
$idcategoria=$categorias[substr($data[3],0,3)];
Y ahí en $idcategoria tenés el id correspondiente para incluir en el insert.
Espero que sirva, saludos.