How to fix weird culling problem?

Hello people who know much more than I do,

So I am trying to make an Air elemental dude and am having a problem. I have actually encountered this problem multiple times but could never solve it. The elemental is made up of several tornado things that use a moving texture shader to animate. The problem lies in this weird culling of itself, in that it blocks anything behind it that uses the same shader at certain angles. Here is the coding for the shader:

Shader "Unlit/Moving Texture"
{
	Properties
	{
		_MainTex ("Texture", 2D) = "white" {}
		_ScrollSpeeds ("Scroll Speeds", vector) = (-1 , 1 , 0 , 0)
		Cutoff("Alpha Cutoff", Range(0,1)) = 0.5

	}
	SubShader
	{
		Tags { "Queue"="Transparent" "RenderType"="Transparent" }
        Blend SrcAlpha OneMinusSrcAlpha
		LOD 100

		Pass
		{
			CGPROGRAM
			#define _ALPHABLEND_ON 1
			#pragma vertex vert
			#pragma fragment frag
			// make fog work
			#pragma multi_compile_fog

			
			#include "UnityCG.cginc"

			struct appdata
			{
				float4 vertex : POSITION;
				float2 uv : TEXCOORD0;
			};

			struct v2f
			{
				float2 uv : TEXCOORD0;
				UNITY_FOG_COORDS(1)
				float4 vertex : SV_POSITION;
			};

			sampler2D _MainTex;
			float4 _MainTex_ST;
			float4 _ScrollSpeeds;

			v2f vert (appdata v)
			{
				v2f o;
				o.vertex = UnityObjectToClipPos(v.vertex);
				o.uv = TRANSFORM_TEX(v.uv, _MainTex);
				o.uv += _ScrollSpeeds * _Time.x;

				UNITY_TRANSFER_FOG(o,o.vertex);
				return o;
			}
			
			fixed4 frag (v2f i) : SV_Target
			{
				// sample the texture
				fixed4 col = tex2D(_MainTex, i.uv);
				// apply fog
				UNITY_APPLY_FOG(i.fogCoord, col);
				return col;
			}
			ENDCG
		}
	}
}

And here are a couple images depicting the same guy but at different angles:
Imgur: The magic of the Internet (this is what I want but it only works at this angle)
Imgur: The magic of the Internet (this is what it looks like at most other angles)

Any help would be appreciated, and yes I do need it to be a shader for the purposes I am using this dude for.

This is likely because the objects are transparent and in the same queue and thus they are rendered based on their distance from the camera. Even if part of the closest object (based on its origin) is further away than another object with the same material from the camera, it will render on top of the part of the second object which has faces which are closer…