A ver, yo creo que sera mucho más fácil si lo planteas de otra manera, podrias plantearlo como $_SESSION[id]=cantidad; donde el id es igual al id del producto y la cantidad al numero de productos con ese id, no hace falta utilizar dos variables de sesion...
ademas no creo que tengas problemas de nombres porque sabes que todos los indices de $_SESSION numericos equivalen a productos y todos los indices de string equivalen a otra cosa...
entonces seria tambien mucho más fácil insertar un nuevo producto o incrementar un producto ya existente:
Código PHP:
function insertar_producto($id,$cantidad=1){
$encontrado=false;
foreach($_SESSION as $indice=>$valor){
if ($indice==$id){
$_SESSION[$id]+=$cantidad;
$encontrado=true;
}
}
if ($encontrado==false) $_SESSION[$id]=$cantidad;
}
Esto se puede optimizar muxo mas y no lo he probao, pero es para que tengas una idea...
Pero si sigues con tu idea te será util la funcion in_array(), que te servira para saber si ya existe el producto
Un saludo!