Это фича (и не только postgres). Поступить - поменять индекс, сделав его не UNIQUE, а UNIQUE NULLS NOT DISTINCT
(и да, эта фича доступна только в постгре 15. для более ранних версий нужно хранить в этом поле не NULL, а, например, 0 (но тут есть свои нюансы с foreign keys))