Here:
if (car2.y + 200 < 0) {
iter.remove();
score++;
if (car.overlaps(car2)) {
System.out.println("Works");
iter.remove();
}
}
You are checking the collision only when the Rectangle is removed when below the screen. Do it like this:
if (car.overlaps(car2)) {
System.out.println("Works");
iter.remove();
}
if (car2.y + 200 < 0) {
iter.remove();
score++;
}