magento2.4 – Prevent cart empty before connecting to payment

Currently in Magrnto 2 before connecting to payment gateway, the in the quote table the is_active status is becoming zero and a new dummy record is created in the same table. So, if the customer not completing the order, and left right from the payment page, the cart becomes empty on his next visit.

I would like to prevent this. hence, I have added a plugin in di.xml as below,

<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
    <type name="MagentoSalesApiOrderManagementInterface">
        <plugin name="ucs_making_the_cart_alive" type="UcsActiveCartPluginOrderServicePlugin" sortOrder="5"/>
    </type>
</config>

And in the plugin added a afterPlace method as below,

<?php

namespace UcsActiveCartPlugin;

use MagentoSalesApiDataOrderInterface;
use MagentoSalesApiOrderManagementInterface;
use MagentoSalesApiOrderRepositoryInterface;

class OrderServicePlugin
{
    protected $_orderRepository;
    protected $_quoteRepository;


    protected $_quoteFactory;
    protected $_quoteModel;

    public function __construct(
        OrderRepositoryInterface $OrderRepositoryInterface,
        MagentoQuoteModelQuoteRepository $quoteRepository,
        
        MagentoQuoteModelQuoteFactory $quoteFactory,
        MagentoQuoteModelResourceModelQuote $quoteModel,

        MagentoFrameworkAppActionContext $context
    )
    {
        $this->_orderRepository = $OrderRepositoryInterface;
        $this->_quoteRepository = $quoteRepository;


        $this->_quoteFactory = $quoteFactory;
        $this->_quoteModel=$quoteModel;

    }
    public function afterPlace( 
        OrderManagementInterface $subject,
        OrderInterface $result
    ) {
        //$return = $proceed($order);

        $order_increment_id = $result->getIncrementId();
        $order_id = $result->getEntityId();

        //$order_id = $order->getEntityId();

        $log_date = date('d-m-Y');

        /* START : BELOW LOG IS USED TO CAPTUE THE RECEIVED AND RESPONDED DATE */
        $log_file = '/var/log/plugin-cart-active-'.$log_date.'.log';
        $writer = new ZendLogWriterStream(BP . $log_file);
        $logger = new ZendLogLogger();
        $logger->addWriter($writer);


        $logger->info($order_increment_id);
        $logger->info($order_id);
        /* END : BELOW LOG IS USED TO CAPTUE THE RECEIVED AND RESPONDED DATE */

        
        try {

            $order = $this->_orderRepository->get($order_id);

            $logger->info('Making the quote process active before payment process begins for the order entity id ->'.$order_id);
            
            $quote_id = $order->getQuoteId();

            $logger->info('Quote ID for the order has been deducted as ->'.$quote_id);

            $quote = $this->_quoteRepository->get($quote_id); // Get quote by id
            $quote->setIsActive(1)->setReservedOrderId(null)->save();


            $quote->setData('is_payment_initiated', 1); // Fill data
            $logger->info(json_encode($quote->getData()));
            $this->_quoteRepository->save($quote); // Save quote
            $logger->info('Quote Saved');

            $objectManager = MagentoFrameworkAppObjectManager::getInstance();
            $_checkoutSession = $objectManager->create('MagentoCheckoutModelSession');
            $_checkoutSession->replaceQuote($quote);

        } catch (Exception $e) {
            $logger->info('Error in updation process');
            $logger->info($e->getMessage());
        }

        return $result;

    }
}

But still the is_active status is not becoming active. What happens is the logic works but only after that the dummy record creation and making the actual is_active status becoming zero process is happening.

How can I override this behavior?