Are you using lookup's or other transformations that are caching data? Take a look at your output window to see what the package is doing right before it hangs up. Also monitor your perfmon SSIS data flow counters for memory and caching. I suspect that you are running out of memory for private caches. I have seen similar behavior before. If you are doing any sort of lookup against a large reference set, then you are probably running out of memory.
SQL Server MVP
Solid Quality Learning