While the indexes /may/ be pretty well thought out. That doesn’t mean that they are useful.
Indexes don’t work the same between SQLite and PostgreSQL so a 1:1 transition between the two databases on indexes probably isn’t going to yield the best results.
For example UUIDs were stored incorrectly in PostgreSQL.
SQLite does not enforce varchar lengths, and typically in PostgreSQL you just use text type and not impose any length restrictions unless absolutely necessary.
PostgreSQL can use multiple indexes in a single query which may help with the 2gb ram limits.
PostgreSQL supports partitioning which could help with the range queries.
All I’m saying is that I believe the performance you get from SQLite imo could be better, and the performance from PostgreSQL a lot better.