How to create node in hook_node_insert without triggering it recursively
Why not add a second submit handler using hook_form_alter to the node add form and put your functionality in there as opposed to using hook_node_insert?

That way the code will run everytime the node add form is submitted, but you won't get into the endless loop scenario...