Нужно реализовать собственный json.JSONEncoder с переопределением метода encode, который будет определять передаваемый объект, и, если он является объектом класса ServiceTTS, сериализовать данные этого объекта в простейший тип. Собственную реализацию json.JSONEncoder'а нужно указать в настройках Celery задачи; ровно так же, как собственно-реализованный json.JSONDecoder, который получит на вход простейшие данные и превратит их в объект класса ServiceTTS.
Но если Вы встали перед необходимостью "передать собственный объект через Celery", значит в вашей архитектуре что-то не так. И я предлагаю Вам не прибегать к реализации энкодера и декодера и подготавливать данные до постановки задачи в Celery.