Время ожидания вашей лямбда-функции слишком мало (по умолчанию это 3 секунды).
Также не стоит пытаться анализировать / индексировать все объекты S3 в рамках одного вызова лямбда-функции, если только вы не может ограничить количество объектов. Максимальный тайм-аут Lambda составляет 15 минут.
Одним из вариантов работы с существующими файлами, в качестве альтернативы EC2, может быть создание списка существующих объектов в корзине (вы можете просто перечислить корзину, если она разумного размера, например, 10 000 предметов или меньше, или вы можете использовать S3 Inventory Report, если он очень большой. В любом случае, получите список объектов и затем отправьте их в очередь SQS, один за другим. Пусть SQS вызовет вашу лямбда-функцию по одному объекту за вызов или пакет из 10 объектов за вызов.