That's normal. VACUUM FULL creates new index pointers for the tuples it moves, which can lead to a bigger index. If it bothers, REINDEX will pack the indexes tighter again.
That explains it... and yes, REINDEX did bring the index size back to normal.
Would it make sense to mention this in docs of VACUUM FULL? Either at
VACUUM FULL may cause a noticeable increase in size of the indexes of the tables that are vacuumed; this is because the VACUUM operation makes new entries in the index for the tuples/rows that have just been moved.
OR
VACUUM FULL may cause a noticeable increase in size of the indexes, that are on the tables being vacuumed; this is because the VACUUM operation makes new entries in the index for the tuples/rows that have just been moved.
Followed By:
An appropriate REINDEX command (REINDEX database|table|index ) can reduce the size of such indexes.
I think it makes sense to put this on both the above mentioned URLs.