From your description, since the workflow action cannot dynamically populate the field based on the selection of look up field, I recommend you using code with SPServices in the Newform.aspx and Editform.aspx page in SharePoint Designer.
Edit the form page in advanced mode and add the script below: In my test,
Current List: list5, Columns: Project Name, Course.
Information list: list4, Columns:ProjectName, course.
Please change the relevant column name and list name for your list.
<script type="text/javascript" src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery.SPServices/2014.02/jquery.SPServices-2014.02.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
var ID;
$('select[title="Project Name"]').change(function(){
ID = $('select[title="Project Name"] option:selected').val();
$().SPServices({
operation: "GetListItems",
async: false,
listName: "list4",
CAMLViewFields: "<ViewFields><FieldRef Name='course' /></ViewFields>",
CAMLQuery: "<Query><Where><Eq><FieldRef Name='ID'/><Value Type='Counter'>" + ID + "</Value></Eq></Where></Query>",
completefunc: function (xData, Status) {
$(xData.responseXML).SPFilterNode("z:row").each(function() {
var course = $(this).attr("ows_course");
$('input[title="Course"]').val(course);
});
}
});
});
});
</script>
