bhè si, ci sono dei non-sense nel codice e anche secondo me non hai "modellato" bene il problema... però per rispondere alla domanda:
nella classe SceltaPersonaggio devi metterci un costruttore che accetti in input un istanza della classe DataManagerPG. Questo è uno dei modi classici con cui in oop le classi si scambiano i dati.

Finstra principale
codice:
DataManagerPG pg = new DatamanagerPG();

SceltaPersonaggio frmSceltaPersonaggio = new SceltaPersonaggio(pg); 
frmSceltaPersonaggio.ShowDialog();
classe SceltaPersonaggio
codice:
private DataManagerPG pg;

public SceltaPersonaggio(DataManagerPG pg)
{
  this.pg = pg; //ora la variabile private pg punta all'oggetto pg del form principale: sono la stessa "cosa"
}