I can do the 300 yards with a snorkel and fins and mask easily, but I cant float fore more than a second, and I get really tired treading water, the only way I can float is if I’m doing my backstroke. Should I just give up?

Keep practicing. I’ve always been able to swim well, but I sink like a rock.

Build your stamina by treading water in practice. Run on a treadmill. Stairclimbers work great too. Another thing to try is this:

Take as big as a breath as you can, and arch your back in the water. Most people can float this way, even if its only 20-30 seconds. This gives you a little break. Tread for a couple minutes, then float. Tread, then float. You only need to do 10 minutes, so these little breaks could be all you need.

Been a diver for several years, and this helped me pass the tread.