"voice" in my example is analogous to the radio wave generated by your 4G device.
In terms of voice and data with 4G networks, all traffic is digitised and is therefore all data. voice data consumes considerably less bandwidth and can be serviced on at least one data stream, whereas internet data will often request to use as many data streams as are available in the bandwidth of the frequency that the mobile tower operates (new generation devices can use multiple towers at once - if the network supports it). That is to say, there are a fixed number of data streams available at each mobile phone tower and your internet device competes for these finite resources along with every other device that binds to that same mobile phone tower.
If there are other nearby mobile phone towers available in your geographic region then by adding an external antenna you may be lucky and have your internet device bind to those further away towers, but they could be just as busy or worse during the times you use the internet. It all gets grey from here, does your internet device and mobile network allow you to bind to multiple towers? Is the network connection policy set by your mobile network provider to bind only to the tower with the clearest signal unless congested? Try testing your internet device outside and if you get better reception then an external antenna may help.
I use a 4G usb modem for my internet connection and find the internet experience to be very variable, I even once ran the usb modem off a 3m long usb cable to position it for better reception. In the end most of the annoying problems I've had have been, as best as I can tell, caused by issues inside the operator's physical network rather than their radio network e.g like their internet gateway going AWOL or getting oversubscribed. The fact that every now and then I can get near full modem speed means that the signal strength is not the main issue so I've long since ditched the 3m cable.