Let $(M,g)$ be a spacetime. Let's say that $F$ is a future set if $F = I^+(S)$ for some set $S$. I'm trying to check the equivalence "$F$ is a future set if and only if $I^+(F) \subseteq F$".
If $F$ is a future set, then $F = I^+(S)$ implies $I^+(F) = I^+(I^+(S))\subseteq I^+(S) = F$, as wanted, since the last inclusion is easy to check and holds for arbitrary sets.
I can check the other implication if we assume from the start that $F$ is open. Then $S = F$ would work, since the inclusion $I^+(F) \subseteq F$ is given, and the inclusion $F \subseteq I^+(F)$ is verified by taking $x \in F$ and a small geodesic ball centered in $x$ contained in $F$ (this is possible since we assume $F$ open); then we use the exponential map to send a timelike geodesic to the past of $x$, and any point on that curve will testify that $x \in I^+(F)$, as wanted.
I do not know how to proceed if we don't assume that $F$ is open from the start. Help?