Nadal struggles but wins again at French Open