Seems like the best thing to do first is to determine what's actually wrong. This is a lot easier than you probably think. The first thing to realize is (aside from damage that causes a structural issue, like a severely crushed or bent/broken tube which is in the main very obvious), that the only thing that counts as far as driving and handling is the relationship between the swing arm pivot and the steering pivot with regards to the frame. You should check that first, and then the wheels, forks, and swing arm.
Actually, you should check the rear wheel for true first as it is so easy and you don't have to take anything apart. Just put the bike on the centerstand (or support it on a jack etc) and spin the wheel. Use a screwdriver, piece of stiff wire etc. as a pointer to check the side to side run out. You can just hold it in place against the frame somewhere to stabilize it while spinning the wheel. Anything over 1/16" will be a problem.
To check the frame you will have to take the bike apart first, but I'd say that's a given, but you only have to take the rear suspension assembly off, the engine and all the complicated bits can remain.
You need to remove the rear wheel, the rear brake bits, shocks and swing arm at the back. The front can stay together. You will need a level, one like in the pic will work well enough and is cheap ($10-$20). You need to support the bike under the frame or pipes so it is at it's normal ride height. Having the lower frame rails horizontal should be a good approximation. With the bike resting on the pipes or frame and the front tire, you can now shim the support on one side or the other to make the steering neck plum. You will need to take some care to do this as there will likely be a bunch of components in the way and not any particularly great surface to place the level on, but a little care and creativity should overcome this problem. Check both sides and when you are happy that the neck is vertical, you can check the swing arm pivot. Put the swingarm pivot bolt back through the frame. The bolt needs to fit in the frame correctly at both ends so if there are any parts that fit between the frame and bolt (very doubtful) put them in too. You don't have to add any other parts or tighten it down. Place the level on top of the bolt (or under it if there is no space) and see how out of level it is. If the frame is perfectly straight, and the steering neck is vertical, the swing arm pivot will be level. If it isn't, you will now know how much the frame is twisted along its longitudinal axis. You would see this distortion when viewing the bike directly from the front or back.
It is also possible for the frame to be bent along the vertical axis, which would be viewed from directly overhead. This is a lot harder to check, but is also of lesser importance as well as somewhat less likely. To check, you will need to first check that your rear wheel is straight and that your swingarm is not bent. To check the swingarm, put it back into the frame while keeping the frame shimmed up to keep the steering head vertical. Don't worry about sloppy bushings etc, just assemble it into the frame loose. Assemble the rear axle into the swing arm along with any bits of hardware that center it up vertically where it passes through the arm. You don't have to bolt it in. Hold it up so the arm is horizontal by propping it up under the axle in the center so you are not lifting it up more on one side than the other to reduce any slop in the assembly from impacting your reading. Place your level on top of the axle. It should read the same as it did when placed on top of the swing arm pivot bolt. If it does, the arm is straight. If not, you know how much it is bent. The swing arm must be straight in order to check the frame for deformation along the vertical axis. If the swingarm is straight, put the rear wheel back on along with all the parts so it is centered in the swingarm like it was manufactured. Take a tape measure and align the chain adjusters so that the center to center distance of the axle to the swing arm pivot is the same - it does not matter what it is, just that it is the same, and tighten the axle so it stays there. Take a string and wrap the middle of it around the back of the back tire and bring the two ends up front past the front tire on both sides. Hold the string parallel to the ground and place on the back tire as high as you can without touching anything else on the bike while keeping the strings parallel to the ground. You'll probably have to put a shock back on, clear beneath the bike and get a friend to hold the bike vertical. Let the strings just touch the widest part of the front of the rear tire while pulling them tight and keeping them parallel to the ground. If the frame proved straight in the longitudinal axis and your front tire (when pointed so the tire is parallel to the strings) is centered between the strings, your frame is straight. If your frame proved straight in the longitudinal axis and the front tire is closer to one string than the other (or you can not even make a test on one side) your frame is bent in the vertical axis. If your frame proved to be bent in the longitudinal axis, this test is irrelevant.
I know this is long winded and sounds complex, but I expect you would actually find it reasonably quick and far easier than it sounds. At the least it is very cheap or free to do and you will know for sure some of what is wrong. Potentially you could merely have a badly bent swing arm and your concern over the frame is unfounded. You have to check to be sure!