Is There Any Way To Implement A Delay Line With Block Based Processing And Not Have Audio Glitches?

I am talking about doing a reading an entire block before writing one or vice versa. Because when I do try to implement this, I keep audio glitches.

Yes. The JUCE DSP DelayLine class can process blocks of audio data.
Even if you don’t want to use the JUCE delay, you can look at the code and learn from it.