I'll address the Newark or JFK part of your question.
Will you be flying one itinerary between your European departure airport and your US destination? If the answer is yes, here is the next question:
How many flights are there to your final US destination if you miss the Newark flight?
If there are several flights to your US destination if you miss your scheduled flight, then the 2 hour layover at Newark could be doable even though that 120 minutes is really too tight. You have to factor in the time it takes to exit the aircraft, walk to immigration, wait on line at immigration, perhaps wait again at the TSA lines at Newark for your domestic flight to your final destination and then walk to the gate. That US flight could also close 15 minutes before departure so you may not have 120 minutes. You should NOT check luggage in order to make that connection. You should also verify you will not need to change terminals at Newark.
If there is only 1 backup flight & you miss your flight from Newark, if there is no seat availability, you are stuck at Newark and will pay for hotel & food expenses unless the reason for missing the flight is because Lufthansa's transatlantic aircraft and/or staffing were the cause of the lateness. I would do JFK then as the risk is too high for me.
If the US destination flight is on a separate ticket and not on the same itinerary from your European departure airport, go to JFK. 6 hours will cover what is probably the need to change terminals via the Airtrain and go through security again.