@colouredmirrorball, there’s no need to clone the PGraphics main canvas of the other PApplet by calling the PImage::get() method. You can simply use it via PApplet::getGraphics(). 
Also, remove that useless synchronized () {} block.
It just makes your sketch slower w/o any concurrency guarding benefit whatsoever in this particular case. 
And a plural or collective name is better for containers such as the array:
static final int WINDOWS = 4;
final PWindow[] windows = new PWindow[WINDOWS];
void draw() {
for (final PWindow window : windows) {
final PGraphics canvas = window.getGraphics();
final PVector coords = window.winPos;
set(coords.x, coords.y, canvas);
}
}