@user2684 It appears that this problem is caused by a bug in bootloaders used in some Arduino boards.
The solution suggested is to flash optiboot bootloader to the Arduino Pro Mini. Or not using a bootloader.
I use mostly barebone atmega328's with optiboot bootloader, working perfectly with reboot function, so I haven't been aware of the problem until now when I used a pro mini.
Please read this article which explains the cause of the problem and suggested fix.
https://andreasrohner.at/posts/Electronics/How-to-make-the-Watchdog-Timer-work-on-an-Arduino-Pro-Mini-by-replacing-the-bootloader/
I will try it on a pro mini when I have time.