Можно использовать -
https://github.com/bandwidth-throttle/token-bucket
Оно позволит ограничить кол-во запросов в секунду ко внешнему сервису. Получится так - приходит внешний запрос, вы его тут же пытаетесь проксировать в сервис. Перед запросом пробуете получить токен $consumer->consume(1);, если токен получен, значит ещё нет 3х в секунду, если не получен, то будет задержка до ближайшего возможного времени.
Если же вам нужно ответить на запрос к вашему сервису максимально быстро, не дожидаясь ответа внешнего сервиса, то нужно использовать какой-нибудь сервис очередей. Внешний запрос добавит сообщение в очередь, а на вашем сервисе уже будет воркер, который его моментально попробует обработать.
В этих вариантах не используется функция отправки по 10 запросов, но думаю что для 1000 запросов в час этого хватить.