current inductor square wave
One large issue is the saturation of the inductor core. Laktronics has already stated the most common solution. Keep the time constant large so that you are limited to just the initial portions of the exponential current ramp curve. At this area, the curve is fairly linear.
You stated that you cannot change the time constant. Therefore, you would have to introduce a logrithmetic driving voltage to counteract the expoential function. Such driving voltage are difficult as they increase without bounds.
Please stop and think what you are asking. For a true sqaure wave voltage across an inductor, the current must be continually ramping during the entire flat portion. It has to do this without getting anywhere near core saturation or the impedance of the coil drops greatly.