Here is the solution, after reading the list carefully i noticed this line:
 RemoveItem(item_id, quantity= 0, slot= 0)
Therefore, $npc->RemoveItem(3233, 1); is the correct format/handle for NPCS to remove items
Completed Quest Script (No Trigger Mob or Signals):
	Code:
	##################
#ZONE - Sebilis
#NPC - Trakanon
#Quest - Green Dragon Hearts (Mobside)
#Author - Kilralpine
##################
#####
# This script will add the item 3233 to trakanon's loottable if a player with the task 500 enters his vicinity. 
# If a player is to leave his vicinity it will remove the item...
# Therefore this script allows npcs to drop quest items ONLY if a player near them has the correct task, this can be adapted to any npc/task/item. ###
#####
sub EVENT_SPAWN {
  my $x = $npc->GetX();
  my $y = $npc->GetY();
  my $range = 210;
  quest::set_proximity($x - $range, $x + $range, $y - $range, $y + $range);
}
sub EVENT_ENTER
{
  if (quest::istaskactivityactive(500,0)) {
quest::addloot(3233,1);
}
}
sub EVENT_EXIT
{
  if (quest::istaskactivityactive(500,0)) {
$npc->RemoveItem(3233, 1);
}
}
 Gunna go ahead and add this to the custom quests section