PostgreSQL query takes a long time (as it's not using the index)
The entire query is planned up front, and at the time of planning it doesn't know what value will be found in CHECKPOINT1_PKEVENT.  It makes the generic assumption that the inequality will match 1/3 of the rows, which is obviously quite wrong.  When faced with this situation, I usually just have the client software run the queries separately, stuffing the result of one into a parameter for the other, assuming I can tolerate the prospect that the value may have changed between the two executions.
That said, it should probably be doing an index only scan anyway.  Do you have a very high setting for random_page_cost?  What are you other planner settings?  Has the table EVENT been vacuumed recently?