You can't shrink a mounted ext4, so you have to do this from e.g., a live CD.
First, you shrink the logical volume, including resizing the filesystem. Note that this will take a while! It may have to move a lot of data.
lvreduce -r -L 290G «vg-name»/«lv-name»
Note both -r (which tells it to resize the filesystem first; this is critical to not suffer data loss) and I also asked for a bit smaller, just to be sure no annoying rounding errors (which would mostly be rounding by the admin — e.g., did you mean 300 GiB or 300GB?). The LVM tools are precise, you could do this exactly if you want... but it's probably easier just to re-grow the filesystem at the end. (The -r/--resizefs option wasn't available in old versions of lvreduce and the other LVM tools. That's why postings on many other websites say you have to do an explicit resize2fs on the filesystem before reducing the LV size, which is no longer necessary because of the -r option.)
Now, you can try vgreduce to see if it can get rid of any unused volume groups. vgreduce -a «vg-name» will attempt to remove all PVs from the volume group, but will only succeed with empty ones. If this removes two, great, you're done.
If that didn't work, you'll need to move the data, which is done with pvmove. The first argument to pvmove is the PV you want to move data from; the second (optional) argument is where to move to. If you omit the second, LVM picks somewhere (other than where you moved it from). After pvmove, you can then try vgreduce «vg-name» «path-to-pv» to remove it from the volume group; again this only succeeds if there is no data on it.
After removing them from the VG, you can use pvremove to remove the LVM "labels" from the disks. Also, you must securely wipe the disks if the data previously on there needs to remain private; LVM and resize2fs has copied the data off, it has not securely erased it.