My 1996 TW developed a similar problem. A few months ago it was running fine with 15/47 sprockets. It came standard with 14/45 sprockets and I have done some 40 000 km with them, the gearing was never a problem, even riding two up in the mountains. One day it started holding back and then pulling stronger again, until it stopped all together with pulling strong. Top speed wend down from 100 km/h to 75 km/h, that is about 50 MPH. I also tried it out with 15/52 sprockets and it was still under powered.
Not connected with this problem, I was just about to take the engine apart to change the cylinder and piston to the XT225 cylinder and piston. While I had the engine apart, I also changed the timing chain. So far the TW had 80 000 km or 50k miles on its speedo.
In the first place I suspected the carburetor to be clogged somewhere and that could be the cause of the bad performance. After taking the carb apart, cleaning it and changing some parts, I expected to have solved the problem.
With this almost new and a little bigger engine I hoped for a little more umph. But the old problem is still there, uphill 70 km/h, on level ground 80 km/h, downhill it picks up some more speed. But downhill it will go without an engine also. It takes a long time to build up speed on level ground and it uses a lot of fuel. When opening up the throttle, the engine will at some point stop to respond/ developing more speed. From ¾ till full throttle there is no difference in speed, it may even go slower.
Now I am checking the ignition, maybe the CDI is out of order. As I understand it, the CDI is responsible for the correct timing and advancing of the ignition. I suppose that the carb is good now with all the attention it got, so the only thing left is the ignition.