I suppose this is another ticket raised for similar issue.
Try refer & hope it helps, https://ww.wp.xz.cn/support/topic/forgot-password-broken/
Found code in retrieve_password() of WC class-wc-shortcode-my-account.php called “allow_password_reset” twice. The 2nd attempt calling to validate_lost_password_captcha() caused incorrect reset key/url.
Try add code below in validate_lost_password_captcha() before its return value:
remove_filter( ‘allow_password_reset’, array( __CLASS__, ‘validate_lost_password_captcha’ ), 10 );
Let me know if it works. Hope it helps.