How to weight a piece of data?
If you want higher weights to have higher significance, and you want longer distance to be associated with a lower weight you should use a decreasing function of the distance as a weight, not an increasing one, as you indicated.
In Physics, a fair share of quantities decreases with the inverse of the squared distance, so I would recommend you use that as a weighting: divide by the distance squared instead of multiplying by the distance.
The decreasing weighting for decreasing class of reliability is just fine.
Of course, the actual scaling and the choice of the weighting function could be investigated further. For example, would: dividing by the cube of the distance, using different values for weighting the classe, etc. be better for your problem? This is something that we cannot easily investigate without further information.
So I have a CSV file of weather stations that have a class (class 1 being the most reliable data to class 3 being the worst). I then have distances from the closest weather station to each county. I am attempting to eliminate station-county relationships that might have unreliable data i.e(class 3 station far from a county). 
I am struggling to come up with a very general way to do this. 
I tried assigned weight to the classes i.e (class 1 = 1, class 2 = .5, class 3 = .1) and then multiplying by distance but that then brings the issue of a close station to a low class give an unreliable read.
If anyone has any thoughts or suggestions on this it would be much appreciated!