Based on which data points/observations? I'd be very cautious taking reports about wartime morale at face value when they come out of an authoritarian dictatorship with wide-ranging government control over the press.
Maybe morale is indeed rather high atm among Russian frontline soldiers, after the tentative breakthrough in Pokrowsk and amid a slipping Ukrainian defense. When it comes to the wider Russian population, however, it would surprise me a lot if their morale was at a multi-year high right now.
Fact of the matter is that Russia seems unable to stop the Ukrainian strikes against their oil and gas infrastructure and that plenty of clips of long lines in front of gas stations are being posted. Inflation stands at 8.2% while the prime rate from the Russian central bank sits at a whooping 16.5%, which is strangling private investment and the non-war economy. Right now, Russian civilians are probably feeling more tangible ripple effects of the war than at any previous point. No, this doesn't mean that the Russian populace is on the verge of revolt or that Putin's downfall is imminent like some Western fanfic wants to believe. At the same time, I have a really hard time buying that now is the time when Russians believe things are going particularly great.
Russian millibloggers have been complaining about the incompetency of high command since the war began, but that chatter is at the lowest level (that I've seen) in years. By contrast, negative reports on the Ukrainian side from soldiers and officers on the ground are increasing. Ukrainian soldiers on the front-line are reporting that the Russians are more disciplined and confident. This coincides with significant improvement in the capability of Russian drone technology, which now exceeds that of Ukraine. Russian tactics are incorporating their superiority in drone warfare, and that change is why Pokrovsk is about to fall in the first place.
Attacking Russian oil/gas infrastructure is exciting and makes for great headlines, but every military resource spent attacking Russian infrastructure is a resource not spent on the front-lines. Russia's advance is in northern Donetsk is getting uncomfortably close to closing down the rail-lines supplying Kramatorsk and Sloviansk (some have already shut down). They're almost within drone range of Zaporizhia city. They're advancing into Dnipro and Ukraine lacks the manpower (tied up in Donetsk) to actually man a defensive line. The topography gets better as you get out of the Donbass, which is heavily populated with small towns and cities that can act like bastions against a Russian advance. Russia isn't going to assault Sloviansk and Kramatorsk directly, they're going to advance south-west from Kupiansk / Borova and north from Pokrovsk. The map looks like one giant cauldron forming in the Donbass. The real threat, though, is to Zaporizhia city. I don't think Ukraine can continue the war if they lose a city with ~700k+ people. Between that and the Donbass, it's 5%+ whatever manpower Ukraine has left. If Kharkiv becomes unlivable, the war probably ends on its own.
All to say that I don't think we're going to see Russia collapse within the next 2-3 years, and I don't think Ukraine has the ability to hold out that long. Even at the current rate of advance, they're going to have the Donbass mostly cut-off by November 2027, and the lines in Dnipro / Zaporizhia are going to be near Pavlohrad and Zaporizhia city itself.