Speed up SELECT query with JOIN from table with 2.2M rows in PostgreSQL?
You should write it like this with a NOT EXISTS statement

SELECT account_id, email
FROM account AS a
WHERE NOT EXISTS (
  SELECT 1
  FROM account_intercom AS i
  WHERE a.account_id = i.account_id
);


Make sure your stats are uptodate and your table clean,

VACUUM FULL account;
VACUUM FULL account_intercom;


Paste the updated EXPLAIN ANALYZE