Упаковка таблицы в форму является частью проблемы, однако у вас есть другие проблемы, которые могут возникнуть. Код ниже решает те. Состояние кнопки по умолчанию - submit, и у вас не может быть нескольких объектов с одинаковым идентификатором (нажатие + зависимость)
<html>
<head>
</head>
<body>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script>
$(document).ready(function() {
$("#add").click(function() {
$("#deps").before("<tr><td>Dependency:</td><td><input type='file' name='deps[]' /><button type='button' class='rem'>- Dependency</button></td></tr>");
});
$(document).on("click",".rem",function() {
$(this).parents("tr").remove();
});
});
</script>
<form method="POST" enctype="multipart/form-data" action="target.php">
<table>
<tr>
<td>
<button type="button" id="add">+ Dependency</button>
</td>
<td>
</td>
</tr>
<tr id="deps">
<td></td>
<td><input type="submit" name="submit" value="send" /></td>
</tr>
</table>
</form>
</body>
</html>