> should detect each block of data
That is not part of the CSV specification I believe, it can only handle 2D data, not 3D as you want. However you can split the data in to blocks right?
fn = "exemple.csv";
data = Import[fn, "TSV"];
data = Split[data, # =!= {""} &]; (* split at empty row *)
data = DeleteCases[data, {{""}} | {""}, \[Infinity]] (* remove empty records *)
Now you have to replace -inf probably with something that is understood, similarly for nan...