Use multiprocessing
As soon as you return a value, and complete the request, FastCGI is going to clean up after you, and that means all the threads you spawned. If you really NEED your task to go on ticking, you have to use multiprocessing so that the process you spawned can survive the end of the request.
Otherwise, Celery is really easy to set up, and solves exactly this problem your having...