Nedgången orsakas sannolikt av matematiska operationer och inte av att tabelldata hämtas. En del av dina kriterier är inte mot postfält utan mot resultatet av matematikoperationen på andra poster, så det blir ett O(N).
Anledningen till att Postgres inte använder ett index och väljer Seq scan istället är för att det beslutar att de flesta tabellposterna måste hämtas under sökning. När de flesta poster i tabellen ska hämtas kanske index inte ger någon större nytta om någon.
För att påskynda saker och ting bör du överväga att använda rymdindex och närhetsbaserad sökning av PostGis eller, alternativt, Elasticsearch med Geo Distance Query .