Hi Tal,
Put a large touchplate at each end of the pool. Measure the time between when the swimmer touches one and the other.
Accelerometers and GPS will not be accurate enough for this project.
The only other technique I can think of is for the swimmer to wear something around their waist or tow something along that contains something like the "log impeller" of a yacht which can measure the speed of the water flow. I don't know how well this would work for something as slow and turbulent as the water around a swimmer.