Нужно как то убрать пробелы в конце кода. Можно ли это сделать с текущем кодом или написать его по другому?
Изучите метод join() у строк. Вам это поможет.
Ну так логично. У вас в print(x[i][j],end=" ") пробел между кавычками

Сделал за васn=int(input())
x=[[0]*n for i in range(n)]

for i in range(n):
    for j in range(n):
        x[i][j]=1
        x[i][n-1]=5
        print(x[i][j],end="")
    print()