The fingering (x, x, 0, 2, 3, 1) to (x, 0, 1, 2, 3, 0) for D- to A makes the most sense to me since you have the least amount of movement, the 2 finger stays where it is and the 3 finger slides back a fret. The index has to jump a few strings but the hand is well anchored. The fingering you have provided is also a very good option for moving from E7 to A, (x, x, 2, 1, 3, 0) to (x, 0, 2, 1, 3, 0). It would seem like these are the same chord but the 2 is fixed while the 1 slides up a fret and the 3 down a fret when going from E7 to A. There are multiple fingerings of the same chord and the "best" choice is driven by the chords before and after.
As for the buzzing and or pain, it is true that if you are not fretting the note close to the fret you can get buzzing and for this reason the fingering (x, 0, 2, 1, 3, 0) would buzz on the G string since the 1 finger is further back. On a classical this is easier to fret since the strings are typically farther apart. The fingering (x, 0, 1, 2, 3, 0) may cause buzzing on the D string for the same reason. If the issue is movement try the fingering I provided. Even though the index may fall farther back I think you will be able to control it better since there is less movement. If all else fails I'd say look into having your guitar adjusted. Do you know if the action is too high? Or if the nut or grooves in the nut are set too high? If so this can cause the guitar to be difficult yo play in the open position. And pressing hard enough to get the strings down can cause the pitch to bend out of tune. Of course setting it too low may cause buzzing for other reasons. If you are not familiar with adjusting guitars and suspect that yours may benefit from a professional adjustment look for a store that offers basic set up services and ask the tech if the action is high. Tell them your issue and see if that is an option. They may say you just need more practice with those chords.