If you change the else if statements into if statements, your code will be able to run multiple statements one after the other (during the same onLoop()) instead of running one if else and breaking out and waiting for the next iteration. You might want to add sleeps if you do that though but it will still make it quicker than sleeping 700ms before iterating again. Also you might want to add small random sleeps between the seaweed withdrawals:
else if (getBank().contains("Giant seaweed")) {
if (getBank().withdraw("Giant seaweed", 1)) {
sleep(random(5,15);
} if (getBank().withdraw("Giant seaweed", 1)) {
sleep(random(5,15);
} if (getBank().withdraw("Giant seaweed", 1)) {
sleep(random(5,15);
} getBank().withdraw("Bucket of sand", 18);
getBank().close();
And a randomised onLoop() return value, eg: return random(600, 800);