I experienced a similar problem when calling the append geoprocessor tool multiple times inside a loop. Calling append multiple times seemed to work fine on most of my datasets but i noticed if the interval between consecutive append calls was small, the process would hang. My process involved loading a Shapefile to a File Geodatabase, adding and calculating some fields, appending to an SDE Feature Class, deleting the objects, and repeating multiple times. Occasionally, the process would hang after the call to append was made. To solve the issue, I modified the process to load all Shapefiles (25+) to a File Geodatabase and created a semi-colon delimited string of the input FGDB feature classes to pass as an input to the append tool.